版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_33781658/article/details/84349091
jdbc事务
mysql有事务机制
先试试mysql语句来执行事务
transaction;
update account set balance=900 where name='abc01';
update account set balance=1100 where name='abc02';
commit;
这样就完成了一次事务
如果在commit;之前调用了rollback;
那么,所有在事务之内的语句都无效了
然后我们来试试jdbc中操作事务
先看看connection的3个关于事务的方法
connection.setAutoCommit(true);
connection.setAutoCommit(false);
connection.commit();
connection.rollback();
就是
1.是否开启自动提交
2.提交
3.回滚
我们先来一个最简单的模板
public static void test(Connection connection) throws SQLException {
try {
//开启事务(设置false就是关闭自动)
connection.setAutoCommit(false);
//...
//提交
connection.commit();
connection.close();
} catch (Exception e) {
connection.rollback();
connection.close();
}
}
我们在代码的最后要进行提交
但是如果有什么错误的话
就要rollback进行回滚