jdbc访问数据库的方式
网站编辑2023-05-02 14:27:49289
Java 数据库连接(Java Database Connectivity,简称 JDBC)是 Java 语言中用于规范客户端程序如何访问数据库的 API,它提供了一种标准的方法来连接和操作数据库。

JDBC 提供了两种访问数据库的方式:基于 DriverManager 和基于 DataSource。
基于 DriverManager 的方式是 JDBC 最基本的访问数据库的方式,它通过加载数据库驱动程序并使用 DriverManager 类来获取数据库连接。以下是基于 DriverManager 的方式访问数据库的步骤:
1. 加载数据库驱动程序:使用 Class.forName() 方法加载数据库驱动程序,例如:
```java
Class.forName("com.mysql.jdbc.Driver");
```
2. 获取数据库连接:使用 DriverManager.getConnection() 方法获取数据库连接,例如:
```java
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "password");
```
3. 创建 Statement 对象:使用 Connection.createStatement() 方法创建 Statement 对象,例如:
```java
Statement stmt = conn.createStatement();
```
4. 执行 SQL 语句:使用 Statement.execute() 方法执行 SQL 语句,例如:
```java
ResultSet rs = stmt.executeQuery("SELECT * FROM user");
```
5. 处理结果集:使用 ResultSet 对象处理查询结果,例如:
```java
while (rs.next()) {
System.out.println(rs.getString("name"));
}
```
基于 DataSource 的方式是一种更加高级的访问数据库的方式,它通过使用 DataSource 接口来获取数据库连接。以下是基于 DataSource 的方式访问数据库的步骤:
1. 创建 DataSource 对象:使用具体的 DataSource 实现类创建 DataSource 对象,例如:
```java
DataSource ds = new com.mysql.jdbc.jdbc2.optional.MysqlDataSource();
((MysqlDataSource) ds).setURL("jdbc:mysql://localhost:3306/test");
((MysqlDataSource) ds).setUser("root");
((MysqlDataSource) ds).setPassword("password");
```
2. 获取数据库连接:使用 DataSource.getConnection() 方法获取数据库连接,例如:
```java
Connection conn = ds.getConnection();
```
3. 创建 PreparedStatement 对象:使用 Connection.prepareStatement() 方法创建 PreparedStatement 对象,例如:
```java
PreparedStatement pstmt = conn.prepareStatement("SELECT * FROM user WHERE name = ?");
```
4. 设置参数:使用 PreparedStatement.setXXX() 方法设置 SQL 语句中的参数,例如:
```java
pstmt.setString(1, "Tom");
```
5. 执行 SQL 语句:使用 PreparedStatement.execute() 方法执行 SQL 语句,例如:
```java
ResultSet rs = pstmt.executeQuery();
```
6. 处理结果集:使用 ResultSet 对象处理查询结果,例如:
```java
while (rs.next()) {
System.out.println(rs.getString("name"));
}
```
JDBC 提供了两种访问数据库的方式:基于 DriverManager 和基于 DataSource。基于 DriverManager 的方式是 JDBC 最基本的访问数据库的方式,而基于 DataSource 的方式是一种更加高级的访问数据库的方式。无论使用哪种方式,都需要加载数据库驱动程序、获取数据库连接、创建 Statement 或 PreparedStatement 对象、执行 SQL 语句以及处理结果集。







