SpringBoot事务
时间: 2023-10-26 12:27:04 浏览: 107
SpringBoot事务是通过使用@EnableTransactionManagement注解在配置类上来开启声明式事务的支持。当使用了@EnableTransactionManagement后,Spring容器会自动扫描注解@Transactional的方法和类。在需要事务的类或方法上使用@Transactional注解即可,当注解在类上时,表示该类的所有public方法都开启事务。被注解的方法成为一个事务整体,共享一个数据库连接,所有操作同时发生。如果在事务内部发生异常,则事务整体会自动回滚。
SpringBoot中的事务隔离级别可以根据具体需要进行配置。事务隔离级别包括读未提交、读已提交、可重复读和串行化。可以通过在@Transactional注解中使用isolation属性来指定事务隔离级别。例如,@Transactional(isolation = Isolation.READ_COMMITTED)表示使用读已提交的事务隔离级别。
@Transactional事务注解由SpringBoot控制,它会在执行具体逻辑时激活事务控制。事务注解的原理是AOP,通过动态代理和反射动态加上事务控制的手动代码逻辑。具体的实现是在逻辑执行前后进行反射动态增强,以实现事务控制的功能。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *3* [SpringBoot(八) SpringBoot中的事务](https://blog.csdn.net/qq_40772692/article/details/121476144)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
- *2* [SpringBoot事务使用及回滚实现代码详解](https://download.csdn.net/download/weixin_38527978/12721854)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]