Spring的事务控制

事务

什么是事务?

事务的4大特性

不考虑事务的隔离性,会引发安全问题

  • 脏读
    一个事务读取了另一个事务改写但还未提交的数据,如果这些数据回滚,则读到的数据是无效的。
  • 不可重复读
    在同一个事务中,多次读取同一数据返回的结果不同,(读取到了另一事物修改并提交的数据)
  • 虚读(幻读)
    一个事务读取数据过程中,另一个事务插入了一些记录。

事务的4个隔离级别

事务的7种传播行为


Spring 中的事务

Spring对事务的支持

spring事务管理高层抽象接口


声明式事务,基于AspectJ 的配置

Spring 中要想事务生效,需要注入业务层的代理类

  • AOP的思想,本身就是把一个类进行了增强,注意:如果是AOP切面配置的话,那么类在产生的过程中,本身就已经被增强了,所以注入本身即可。

AspectJ 是为了简化AOP的开发

  • 开源的第三方AOP开发框架

声明式事务,基于注解的方式配置

第一步,开启注解事务

第二步添加@Tansational 注解

第三步,事务属性的相关配置

总结

疑问

springboot 中,我如何知道哪些类被事务控制了?

springboot的@EnableTransational 注解的原理?

生产环境中,使用的事务隔离级别是什么?

喜欢出发、喜欢离开、喜欢不一样的事物。——May
原文地址:https://www.cnblogs.com/I-Say/p/14541885.html