📅  最后修改于: 2023-12-03 14:43:05.612000             🧑  作者: Mango
JDBC(Java Database Connectivity)是一种Java编程语言下的应用程序接口,用于标准化访问数据库管理系统(DBMS)。通过JDBC接口,Java应用程序可以连接到多种不同的关系型数据库,如MySQL、Oracle、SQL Server等,而且连接方式几乎相同。JDBC接口可以轻松地针对任何支持SQL标准的数据库编写Java应用程序,它是Java领域里使用最为广泛的数据库访问技术。
JDBC的主要构成是Java应用程序、JDBC驱动管理器(Driver Manager)、数据库驱动和数据库管理系统(DBMS)。其中,JDBC应用程序通过JDBC驱动管理器连接数据库驱动,后者作为Java应用程序与后端数据库之间的中间层,最终通过JDBC驱动管理器连接数据库管理系统。
JDBC架构示意图如下所示:
JDBC数据库API主要有3类接口:
使用JDBC实现对数据库的操作,一般流程如下:
下面简单演示一个通过JDBC连接MySQL数据库的例子:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class JdbcDemo {
public static void main(String[] args) throws Exception {
// 1. 加载数据库驱动
Class.forName("com.mysql.jdbc.Driver");
// 2. 检查数据库连接
String url = "jdbc:mysql://localhost:3306/test_db";
String user = "root";
String password = "root";
Connection conn = DriverManager.getConnection(url, user, password);
// 3. 创建Statement对象
Statement stmt = conn.createStatement();
// 4. 执行SQL语句
String sql = "SELECT id, name, age FROM user";
ResultSet rs = stmt.executeQuery(sql);
// 5. 处理结果集
while (rs.next()) {
System.out.println("id=" + rs.getInt("id")
+ ", name=" + rs.getString("name")
+ ", age=" + rs.getInt("age"));
}
// 6. 关闭连接
rs.close();
stmt.close();
conn.close();
}
}
JDBC是Java领域里最为常用的数据库访问技术之一,通过JDBC,Java应用程序可以轻松地连接到多种不同的关系型数据库,与之相比,JDBC的缺点是需要编写大量重复的代码来进行数据库操作。为了解决这个问题,常用的做法是使用类似MyBatis、Hibernate等ORM框架,它们都是JDBC的封装,可以大大简化数据库操作。