什么是JDBC?
是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。
JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序.
JDBC为访问不同的数据库提供了一种统一的途径,为开发者屏蔽了一些细节问题。
JDBC的目标是使Java程序员使用JDBC可以连接任何提供了JDBC驱动程序的数据库系统,这样就使得程序员无需对特定的数据库系统的特点有过多的了解,从而大大简化和加快了开发过程。
总结: JDBC本身是java连接数据库的一个标准,是进行数据库连接的抽象层,由java编写的一组类和接口组成,接口的实现由各个数据库厂商来完成–驱动包.
如何使用?
五步:
1.加载注册驱动
2.获取数据库连接对象
3.获取预编译语句对象
4.执行sql语句
5.释放资源
@Test // 插入操作
public void testInsert() throws Exception {
// 创建sql语句
String sql = "INSERT INTO user (name,age)VALUES(?,?)";
// 加载注册驱动
Class.forName("com.mysql.cj.jdbc.Driver");
// 获取数据库连接对象
Connection conn = DriverManager.getConnection("jdbc:mysql:///sss", "root", "root");
// 创建预编译语句
PreparedStatement ps = conn.prepareStatement(sql);
// 设置值
ps.setString(1, "小可爱");
ps.setInt(2, 2);
// 执行sql语句
ps.executeUpdate();
// 释放资源
ps.close();
conn.close();
}
@Test // 查询
public void testSelect() throws Exception {
// sql
String sql = "SELECT * FROM user";
// 加载注册驱动
Class.forName("com.mysql.cj.jdbc.Driver");
// 获取数据库连接对象
Connection conn = DriverManager.getConnection("jdbc:mysql:///sss", "root", "root");
// 创建预编译语句对象
PreparedStatement ps = conn.prepareStatement(sql);
// 执行sql
ResultSet rs = ps.executeQuery();
// 处理结果集
while (rs.next()) {
User u = new User(rs.getInt(1), rs.getString(2), rs.getInt(3));
System.out.println(u);
}
// 释放资源
rs.close();
ps.close();
conn.close();
}
分析:
现在我们可以使用JDBC来完成增删改查,每一个操作都需要做五步.操作数据库是非常频繁的操作,比如可能很多地方都要调用查询操作,如果需要修改数据库服务器或者修改了账号密码等,每一处操作查询所写的五步都需要改一遍.