java - jdbc

102 阅读1分钟

JDBC

什么是JDBC?JDBC是Java DataBase Connectivity的缩写,它是Java程序访问数据库的标准接口。

JDBC接口是Java标准库自带的,所以可以直接编译。而具体的JDBC驱动是由数据库厂商提供的

这样保证了Java程序编写的是一套数据库访问代码,却可以访问各种不同的数据库

JDBC查询

MySQL的URL是:

jdbc:mysql://localhost:3306/learnjdbc?useSSL=false&characterEncoding=utf8

image.png

image.png

插入

image.png

插入并获取主键

image.png

更新

image.png

删除

image.png

JDBC事务

数据库事务(Transaction)是由若干个SQL语句构成的一个操作序列。数据库系统保证在一个事务中的所有SQL要么全部执行成功,要么全部不执行

image.png

Batch

image.png

jdbc连接池 - HikariCP

常用的JDBC连接池有:

  • HikariCP
  • C3P0
  • BoneCP
  • Druid

image.png

一开始,连接池内部并没有连接,所以,第一次调用ds.getConnection(),会迫使连接池内部先创建一个Connection,再返回给客户端使用。当我们调用conn.close()方法时(在try(resource){…}结束处),不是真正“关闭”连接,而是释放到连接池中,以便下次获取连接时能直接返回。

因此,连接池内部维护了若干个Connection实例,如果调用ds.getConnection(),就选择一个空闲连接,并标记它为“正在使用”然后返回,如果对Connection调用close(),那么就把连接再次标记为“空闲”从而等待下次调用。这样一来,我们就通过连接池维护了少量连接,但可以频繁地执行大量的SQL语句。