首先,数据库本身支持事务;
事务开始,connectionsetAutoCommit(false);
然后如平常使用数据库一样进行 *** 作,如果任何一步捕获到异常需要
connectionrollback 使之前的 *** 作全部回滚;
最后需要 connectioncommit();
connectionsetAutoCommit(true);
hibernate的transacion类是把上述步骤给封装了,原理一样
把到mysql中取序列值并增加1的这个过程单独写成一个方法,这个方法上加上事务控制,并且事务传播行为设置是TransactionDefinitionPROPAGATION_NESTED,即嵌套事务,也就是说不管这个方法外面有没有事务,这个方法自己本身都用新的、独立的一个事务来控制。这样即使外面事务失败了,这个序列值不会受到影响。
以上就是关于数据库中的事务,java中用哪些方法保证事务全部的内容,包括:数据库中的事务,java中用哪些方法保证事务、java调用mysql数据库 事务、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)