JDBC的学习
1、什么是JDBC
JDBC是由一系列连接(Connection)、SQL语句(Statement)和结果集(ResultSet)构成的,其主要作用概括起来有如下3个方面:
① 建立与数据库的连接。
②向数据库发起查询请求。
③处理数据库返回结果。
2、JDBC的作用
JDBC是Java数据库连接(Java Database Connectivity)的简称。是Java平台(JavaSE)中用来规范客户端程序如何来访问数据库的应用程序接口(API),提供了诸如查询和更新数据库中数据的方法。软件开发人员使用这些标准API来连接和操作数据库,实现数据库应用程序的开发。JDBC API采用接口和实现分离的设计思想,其中接口主要包含在java.sql包中,之后的扩展内容在javax.sql包中。这些接口的实现类被称为数据库驱动程序,由数据库厂商或其他厂商、个人提供。
3、JDBC API介绍:
DriverManager: 负责加载驱动程序(Driver),并根据不同的请求返回对应的数据库连接对象(Connection)。
Driver:驱动程序,由DriverManager工厂生成。
Connection:数据库连接对象,负责与数据库间的通信及SQL语句的执行。
Statement:用于执行静态SQL语句,该对象由Connection对象获得。
PreparedStatement:用于执行包含动态参数的SQL语句。
ResultSet:用于指向执行查询SQL语句后结果集的接口。
4、JDBC的简单使用,步骤
- 步骤一:创建Java项目,引入mysql的驱动包.
- 步骤二:编写程序
- 步骤三:注册驱动
- 步骤四:获得连接
- 步骤五:执行SQL
- 步骤六:释放资源
5、代码展示,注释比较详细
public class Hello {
private String DRIVER_CLASS = "com.mysql.jdbc.Driver";
//如何解决MySQL在高版本需要指明是否进行SSL连接问题,在mysql连接字符串url中加入ssl=true或者false即可,如下所示。
private String JDBC_URL = "jdbc:mysql://localhost:3306/millet?characterEncoding=utf8&useSSL=true";
private String MYSQL_USERNAME = "root";
private String MYSQL_PASSWORD = "123456";
@Test
public void registDriver() throws ClassNotFoundException, SQLException {
// 注册驱动
Class.forName(DRIVER_CLASS);
// 获取连接,ctrl + o 快速导入相关包
Connection _cConnection = (Connection) DriverManager.getConnection(JDBC_URL, MYSQL_USERNAME, MYSQL_PASSWORD);
// 编写sql语句,查询数据库millet中category表中的所有数据
String _sql = "select * from category";
// 创建语句执行者
PreparedStatement _pStatement = _cConnection.prepareStatement(_sql);
// 设置参数,这里sql语句中没有参数,所以不用设置
//_pStatement.setString(1, "c001");
// 执行sql语句
ResultSet _sResultSet = _pStatement.executeQuery();
// 处理结果
while (_sResultSet.next()) {
System.out.println(_sResultSet.getString("cid") + ":" + _sResultSet.getString("cname"));
}
// 释放资源,先打开的后关闭
_sResultSet.close();
_pStatement.close();
_cConnection.close();
}
}
6、结果