一、引言
数据库相关的组件封装和屏蔽了业务代码对mysql数据库访问的诸多细节,有必要对这些细节进行深入的了解,构建完整的数据库访问的知识链路。
二、知识点
2.1 JDBC
参考:https://blog.csdn.net/luanlouis/article/details/30060755
1、JDBC:Java Database Connection,表示数据库连接(任何数据库都支持JDBC的连接),是一个独立于特定数据库管理系统、通用的sql数据库存取和操作的公共接口。它是java中专门提供的一组用于操作数据库的标准,所有的数据库生产商如果要是想为java提供支持,则必须支持此标准。所以说JDBC实际上是一套访问数据库的接口。
2、java定义JDBC接口,数据库来实现这个接口。不同的厂商对JDBC有不同的实现,所以厂商要提供自己数据库的驱动,让应用程序来访问。而应用程序则只通过自己的一套JDBC接口来访问就行了,然后驱动程序来实现这个接口,从而让驱动来调用数据库。因此驱动程序由数据库提供商提供下载。
观察数据库的配置文件,可以发现数据库驱动是通过driver-class-name 指定的。
spring:
datasource:
url: jdbc:mysql://**:**/**?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true&allowMultiQueries=true
username: **
password: **
driver-class-name: com.mysql.jdbc.Driver
initial-size: 10 // 初始的连接池大小
validation-query: SELECT 1
max-idle: 8 //最大的空闲连接,空闲线程超过此数量,会被关闭
min-idle: 5 //最小的空闲连接,当新的连接请求到达,消耗了一个空闲连接,而空闲连接小于此数量,但是总的线程数没有超过上限,则会创建新的连接
test-on-borrow: true // 必须设置
3、常用操作类/接口
DriverManager类、Connection接口、Statement接口、PreapredStatement接口、ResultSet接口、CallableStatement接口。
4、JDBC应用步骤
- 注册加载一个驱动
- 创建数据库连接(Connection)
- 构造SQL语句
- 创建statement,发送sql语句
- 执行sql语句
- 处理sql结果
- 关闭statement和connection
5、使用JDBC访问数据库的原始程序
package com.vae.jdbc;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class JdbcTest {
/**
* @param args
*/
//数据库连接地址
pri