我的编程空间,编程开发者的网络收藏夹
学习永远不晚

spring事务的注意事项有哪些

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

spring事务的注意事项有哪些

spring事务的注意事项有哪些,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

  事务一般是指数据库事务,是指作为一个程序执行单元执行的一系列操作,要么完全执行,要么完全不执行。事务就是判断以结果为导向的标准。

spring的特性(ACID)

  (1).原子性(atomicity)

  原子性就是一个不可分割的工作单元。简单的说,就是指事务包含的所有操作要么全部成功,要么全部失败回滚。因此事务的操作如果成功就必须要完全应用到数据库,如果失败则不能对数据库有任何影响。

  (2).一致性(consistency)

  一致性就是事务必须是使一个一致性状态变成另一个状态,也就是说一个书屋执行之前和执行之后都必须处于一致性状态。那转账来说,假设用户A和用户B两者的钱加起来一共是5000.那么不管A和B之间如何转账,转多少次,事务结束后两者的钱加起来还是5000。

  (3).隔离性(isolation)

  隔离性就是一个事务的执行不能被另一个事务干扰。当多个用户并发访问数据库操作同一张表时,数据库为每一个用户开启的事务,不能被其他事务的操作所干扰,并发事务之间要相互隔离。

  (4).持久性(durability)

  持久性是指一个事务一旦被提交了,那么对数据库数据的改变就是永久的。即使是在数据系统遇到故障的情况下也不会丢失提交事务的操作。

spring的隔离级别

  *脏读:一个事务读到了另一个事务未提交的数据

  *不可重复读:一个事务读到另一个事务已经提交(update)的数据导致多次查询结果不一致

  *虚幻读:一个事务读到了另一个事务已经提交(insert)的数据导致多次查询结果不一致。

  对于sqlserver和oracle的默认隔离级别是RC,mysql的默认隔离级别是RR。

spring的注意事项

  1.出现Exception是无法回滚的,只有抛出RuntimeException和Error异常时才能回滚。2.在事务代码中捕获了异常,是无法进行回滚的。

  3.如果是使用的spring+mvc模式。并且spring和mvc都扫描了service层(事务处理层),事务不生效。因为spring会有限加载mvc的配置文件,而事务的配置基本上都是在spring中,因为spring的子容器先于父容器启动,造成在controller中注入service时还没有加载事务。

  4.mysql的myISAM引擎,是不支持事务的,需要设置为innoDB模式。

  5.事务的开启必须放到listener里面加载,如果放到dispatchServlet的配置里面,事务不生效。

  6.如果在接口中使用@Transactional,只有JDK动态代理才能生效,CGLIB动态代理是不生效的,因为注解是不能继承的。

关于spring事务的注意事项有哪些问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

spring事务的注意事项有哪些

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Flex键盘事件注意事项有哪些

这篇文章将为大家详细讲解有关Flex键盘事件注意事项有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Flex键盘事件注意事项注意:1.判断keycode时,需要调用toString()方法,然后在跟键
2023-06-17

建站有哪些注意事项

本篇内容主要讲解“建站有哪些注意事项”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“建站有哪些注意事项”吧!  医疗行业作为一个特殊、敏感的行业,做好网站建设是一件很不容易的事情。随着互联网的高速
2023-06-10

Java中Spring-Cache key配置注意事项有哪些

这篇文章给大家分享的是有关Java中Spring-Cache key配置注意事项有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。为了提升项目的并发性能,考虑引入本地内存Cache,对:外部数据源访问、Rest
2023-05-31

Redis事务操作限制和注意事项有哪些

在使用Redis事务操作时,有一些限制和注意事项需要注意:Redis事务是一组命令的集合,通过MULTI和EXEC命令来开启和提交事务,但是在事务执行期间,如果有错误发生,整个事务会被回滚,即使其中的某些命令已经执行成功。Redis事务不支
Redis事务操作限制和注意事项有哪些
2024-05-07

PHP5到PHP7的注意事项有哪些

这篇文章给大家分享的是有关PHP5到PHP7的注意事项有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。PHP7是大势所趋了。PHP7有更多的新特性,更好的性能,更高的速度。并且,从今年8月7日开始发行PHP7
2023-06-15

Arrays.sort()使用的注意事项有哪些

这篇文章主要讲解了“Arrays.sort()使用的注意事项有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Arrays.sort()使用的注意事项有哪些”吧!Arrays.sort()
2023-06-30

sql求和的注意事项有哪些

在使用SQL进行求和操作时,需要注意以下几点:确保对正确的列进行求和操作,避免对不需要求和的列进行操作。确保对数据类型兼容的列进行求和操作,避免对不同数据类型的列进行操作,可能导致结果不准确。注意对空值进行求和时可能会产生不准确的结果,
sql求和的注意事项有哪些
2024-03-05

innodb使用的注意事项有哪些

使用InnoDB引擎时,有一些注意事项需要注意:1. 适当设置InnoDB缓冲池大小:InnoDB使用缓冲池来缓存数据和索引,因此设置适当的缓冲池大小对性能至关重要。一般来说,建议将缓冲池设置为物理内存的70-80%。2. 合理设置Inno
2023-09-15

云计算注意事项有哪些

这篇文章主要讲解了“云计算注意事项有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“云计算注意事项有哪些”吧! 使用云计算已经成为当下互联网业发展的趋势,云计算可以更高更快更高效地协助我们
2023-06-07

新建ASP.NET注意事项有哪些

本篇内容主要讲解“新建ASP.NET注意事项有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“新建ASP.NET注意事项有哪些”吧!你可能已经用惯了使用VS 新建一个ASP.NET , VS
2023-06-17

编程热搜

目录