JDBC-Connection
JDBC-Connection
Connection(数据库连接对象)作用:
- 获取执行SQL的对象
- 管理事务
- 获取执行SQL的对象
- 普通执行SQL对象
Statement createStatement()
- 预编译SQL的执行SQL对象:防止SQL注入
PreparedStatement prepareStatement(sql)
- 执行存储过程的对象
CallableStatement prepareCall(sql)
- 普通执行SQL对象
- 事务管理
- MySQL事务管理
- 开启事务:BEGIN; START TRANSACTION;
- 提交事务:COMMIT;
- 回滚事务:ROLLBACK;
- MySQL默认自动提交事务
- JDBC事务管理:Connection接口中定义了3个对应的方法
- 开启事务:setAutoCommit(boolean autoCommit): true为自动提交事务;false为手动提交事务,即为开启事务。
- 提交事务:commit()
- 回滚事务:rollback()
- MySQL事务管理
try {
// 开启事务
conn.setAutoCommit(false);
// 5. 换行sql
int count1 = stmt.executeUpdate(sql1); // 受影响的行数
// 6. 处理结果
System.out.println(count1);
// 制造异常
int i = 3 / 0;
// 5. 换行sql
int count2 = stmt.executeUpdate(sql2); // 受影响的行数
// 6. 处理结果
System.out.println(count2);
// 提交事务
conn.commit();
} catch (Exception throwables) {
// 回滚事务
conn.rollback();
throwables.printStackTrace();
}
// 7. 释放资源
stmt.close();
conn.close();