56-jdbc事务

版权声明:本文为博主原创文章,未经博主允许不得转载。 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进行回滚



猜你喜欢

转载自blog.csdn.net/qq_33781658/article/details/84349091
今日推荐