java如何连接
Java 连接数据库的方法
Java 连接数据库通常使用 JDBC(Java Database Connectivity)技术,以下是具体步骤和示例代码。
加载 JDBC 驱动
使用 Class.forName() 方法加载数据库驱动。不同的数据库需要不同的驱动类名。例如 MySQL 的驱动类名为 com.mysql.jdbc.Driver。
Class.forName("com.mysql.jdbc.Driver");
建立数据库连接
通过 DriverManager.getConnection() 方法传入数据库 URL、用户名和密码建立连接。URL 格式通常为 jdbc:mysql://hostname:port/databaseName。
String url = "jdbc:mysql://localhost:3306/mydatabase";
String username = "root";
String password = "password";
Connection connection = DriverManager.getConnection(url, username, password);
执行 SQL 查询
创建 Statement 或 PreparedStatement 对象执行 SQL 查询。PreparedStatement 可以防止 SQL 注入。
Statement statement = connection.createStatement();
ResultSet resultSet = statement.executeQuery("SELECT * FROM users");
PreparedStatement preparedStatement = connection.prepareStatement("SELECT * FROM users WHERE id = ?");
preparedStatement.setInt(1, 1);
ResultSet resultSet = preparedStatement.executeQuery();
处理查询结果
通过 ResultSet 对象遍历查询结果并获取数据。
while (resultSet.next()) {
int id = resultSet.getInt("id");
String name = resultSet.getString("name");
System.out.println("ID: " + id + ", Name: " + name);
}
关闭资源
操作完成后关闭 ResultSet、Statement 和 Connection 对象以释放资源。
resultSet.close();
statement.close();
connection.close();
使用连接池优化连接
频繁创建和关闭数据库连接会影响性能,可以使用连接池(如 HikariCP、DBCP)管理连接。
HikariCP 示例
HikariConfig config = new HikariConfig();
config.setJdbcUrl("jdbc:mysql://localhost:3306/mydatabase");
config.setUsername("root");
config.setPassword("password");
HikariDataSource dataSource = new HikariDataSource(config);
Connection connection = dataSource.getConnection();
常见数据库连接示例
MySQL
Class.forName("com.mysql.jdbc.Driver");
Connection connection = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/mydatabase", "root", "password");
PostgreSQL
Class.forName("org.postgresql.Driver");
Connection connection = DriverManager.getConnection(
"jdbc:postgresql://localhost:5432/mydatabase", "postgres", "password");
Oracle
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection connection = DriverManager.getConnection(
"jdbc:oracle:thin:@localhost:1521:ORCL", "username", "password");
异常处理
数据库操作可能抛出 SQLException,建议使用 try-with-resources 自动关闭资源。
try (Connection connection = DriverManager.getConnection(url, username, password);
Statement statement = connection.createStatement();
ResultSet resultSet = statement.executeQuery("SELECT * FROM users")) {
while (resultSet.next()) {
System.out.println(resultSet.getString("name"));
}
} catch (SQLException e) {
e.printStackTrace();
}
使用 ORM 框架
对于复杂项目,可以使用 ORM(对象关系映射)框架如 Hibernate 或 MyBatis 简化数据库操作。

Hibernate 示例
SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory();
Session session = sessionFactory.openSession();
Transaction transaction = session.beginTransaction();
User user = new User();
user.setName("John Doe");
session.save(user);
transaction.commit();
session.close();
通过以上方法可以灵活地实现 Java 与数据库的连接和操作。






