JDBC的API解析
一、DriverManager
DriverManager(驱动管理类)作用:
1、注册驱动
2、获取数据库连接
1、注册驱动:
注册驱动的书写方法,表面上没有使用 DriverManager类,选中Driver,ctrl+b看源码可知
它使用了 DriverManager.registerDriver()的方法
在MySQL5之后的驱动包,可以省略注册驱动的步骤
自动加载jar包中的META-INF/services/java.sql.Driver文件的驱动类
2、获取连接
static Connection getConnection(String url,String user,String password)
参数
1、url:连接路径
语法:jdbc:mysql://ip地址(域名):端口号/数据库名称?参数键值对1&参数键值对2....
举例:jdbc:mysql://127.0.0.1:3306/db1(本机127.0.0.1,本机域名:localhost)
细节: 如果连接的是本机mysql服务器,并且mysql默认端口号是3306 ,则url可以简写为:jdbc:mysql://数据库名称?参数键值对如:jdbc:mysql:///db1
配置userSSL=false参数,禁用安全连接方式,解决警告提示
2、user:用户名
3、password:密码
解决警告提示:
?userSSL=false
二、Connection
Connection(数据库连接对象)作用:
1、获取执行SQL的对象
2、管理事务
1、获取执sql对象
- 普通执行SQL对象
Statement createStatement()
- 预编译SQL的执行SQL对象:防止SQL注入
PrepareStatement prepareStatement(sql)
- 执行存储过程对象
CallableStatement prepareCall(sql)
2、事务管理
mysql事务管理
开启事务:BEGIN;/START TRANSACTION(start transaction)
提交事务:COMMIT;
回滚事务:ROLLBACK;
(MySQL默认自动提交事务)
JDBC事务管理:
Connection接口中定义了3个对应的方法
开启事务:setAutoCommit(boolean autoCommit);true为自动提交事务,false为手动提交事务(开启事务)
提交事务:commit()
回滚事务:rollback()
演示jdbc的事务
复制前面弄过的类到包下
运行之前数据库emp表:
运行结果:
运行之后数据库emp表:
try之中的发生了异常 ,就会 被catch捕获,发生回滚,回滚到还没有开启事务之前,就是数据没有修改之前,若是没有用事务,就会导致可能一个成功一个失败,这是我们不愿意看到的。 启用了事务,用了回滚事务,可以保证多个事务要么同时成功,要么同时失败。
- 点赞
- 收藏
- 关注作者
评论(0)