请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

spring事务与数据库事务

spring的事务是否是在数据库事务上进行的封装?底层仍然是操作数据库的事务吗?那两边的隔离级别设置的不同会怎样?

正在回答 回答被采纳积分+3

1回答

翔仔 2020-03-24 02:04:50

同学好,Spring的事务隔离级别和数据库的事务隔离级别是相互独立的,它会有自己的一套应用程序级别上的实现,不相互影响,除非设置成ISOLATION_DEFAULT(用底层数据库的默认隔离级别,数据库管理员设置什么就是什么),否则Spring会使用它自己现有的机制,控制数据的提交和读取方式,以实现事务的隔离机制。虽然它后续涉及的是数据库的事务,但是会在上面包了一层隔离机制

0 回复 有任何疑惑可以回复我~
  • 提问者 海与千巷 #1
    可以理解为spring的事务覆盖了数据库的事务吗?比如spring设置了RR,数据库设置了RC,那最终执行的效果是RR(RC不起作用),不知道我这样的理解对吗?
    回复 有任何疑惑可以回复我~ 2020-03-24 08:48:16
  • 翔仔 回复 提问者 海与千巷 #2
    同学好,是的,从应用层面上直接封装了
    回复 有任何疑惑可以回复我~ 2020-03-25 01:21:01
  • 提问者 海与千巷 回复 翔仔 #3
    谢谢老师,那如果是这样的话为什么还要给数据库设置事务呢。。
    回复 有任何疑惑可以回复我~ 2020-03-25 08:03:10
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信