目录
2.4. 使用PreparedStatement实现CRUD操作
三、JDBC程序编写(使用PreparedStatement实现查询操作)
2、ResultSet与ResultSetMetaData(结果集,元数据)
一、JDBC概念
JDBC(Java Database Connectivity)是一个**独立于特定数据库管理系统、通用的SQL数据库存取和操作的公共接口**(一组API),定义了用来访问数据库的标准Java类库,(**java.sql,javax.sql**)使用这些类库可以以一种**标准**的方法、方便地访问数据库资源。
JDBC的目标是使Java程序员使用JDBC可以连接任何**提供了JDBC驱动程序**的数据库系统,这样就使得程序员无需对特定的数据库系统的特点有过多的了解,从而大大简化和加快了开发过程。
如果没有JDBC,那么Java程序访问数据库时是这样的:
有了JDBC,Java程序访问数据库时是这样的:
所以,当我们使用JDBC的时候,我们会将形成一定的标准,规范化,利于形成集群化、良性化的生态:
引出了一种思想: ————面向接口编程
不同的数据库厂商,需要针对这套接口,提供不同实现。不同的实现的集合,即为不同数据库的驱动。
二、JDBC程序编写(实现对数据表的增删改)
1、JDBC程序编写步骤
补充:
ODBC(**Open Database Connectivity**,开放式数据库连接),是微软在Windows平台下推出的。使用者在程序中只需要调用ODBC API,由 ODBC 驱动程序将调用转换成为对特定的数据库的调用请求。
2、数据表增删改
2.1. 基本步骤
①获取数据库连接
②获取PreparedStatement的实例 (或:预编译sql语句)
③填充占位符
④执行sql语句
⑤关闭资源
2.2. 通用的增删改方法(调用即可)
//通用的增、删、改操作(体现一:增、删、改 ; 体现二:针对于不同的表)
public void update(String sql,Object ... args){
Connection conn = null;
PreparedStatement ps = null;
try {
//1.获取数据库的连接
conn = JDBCUtils.getConnection();
//2.获取PreparedStatement的实例 (或:预编译sql语句)
ps = conn.prepareStatement(sql);
//3.填充占位符
for(int i = 0;i < args.length;i++){
ps.setObject(i + 1, args[i]);
}
//4.执行sql语句
ps.execute();
} catch (Exception e) {
e.printStackTrace();
}finally{
//5.关闭资源
JDBCUtils.closeResource(conn, ps);
}
}
//调用上述方法,实现对数据表的增删改
@Test public void testCommonUpdate(){
String sql =”增删改语句(要有占位符)”;
调用增删改的具体方法update(sql,索引);
}
2.3. 获取数据库连接(分解注释)
四项基本信息要素
加载驱动的具体信息(要素一)
url(要素二)(基于什么样的协议,基于那个端口号下的数据库)
用户名user(要素三)
密码password(要素三)
要素一:Driver接口实现类
Driver接口介绍
java.sql.Driver 接口是所有 JDBC 驱动程序需要实现的接口。这个