@Autowiredprivate TransactionTemplate transactionTemplate;后面直接使用即可:
@Overridepublic void template() {SysLog sysLog = new SysLog();sysLog.setOperIp("123");SysLog sysLog1 = new SysLog();sysLog1.setOperIp("hhh");log.info("插入第一条数据开始========");testMapper.insert(sysLog);log.info("插入第一条数据完成========");transactionTemplate.execute(status -> {log.info("编程式事务中:插入第一条数据开始========");testMapper.insert(sysLog1);log.info("编程式事务中:插入第一条数据完成========");log.info("编程式事务中:插入第二条数据开始========");int insert = testMapper.insert(sysLog);log.info("编程式事务中:插入第二条数据完成========");return insert;});}

文章插图
查看数据库 , 第一条不在编程式事务内不会参与回滚!

文章插图
七、总结本文介绍了SpringBoot框架中的声明式事务和编程式事务 , 并分析了它们的源码实现、区别、优缺点、适用场景以及实战 。
无论是采用哪种方式来管理事务 , 都需要考虑到业务需求和开发团队的实际情况 , 选择合适的事务处理方式 , 以确保系统的可靠性和稳定性 。
希望通过本文的介绍 , 你能够更好地理解声明式事务和编程式事务的概念和原理 , 在开发过程中选择合适的事务处理方式 , 提高项目的可维护性和稳定性 。
【Spring/SpringBoot中的声明式事务和编程式事务源码、区别、优缺点、适用场景、实战】
推荐阅读
- 如何处理生产环境中的数据和机器学习偏误?
- 葡萄酒中的营养成分
- 乾隆通宝|乾隆通宝中的山底隆和正字隆哪个更具有收藏价值
- |如何正确对待职场中的“人情味”
- 钱币|第三版中的车工目前市场行情如何
- 袁大头|三年袁大头中的燕子版,如何辨别?
- 张颂文|娱乐圈中的世态炎凉,在46岁张颂文身上体现得很彻底
- 官窑|明清官窑中的“孔雀蓝釉”,罕见至极,不收藏可惜了!
- 新能源|论电视剧《对手》中的职场竞争与人性探究
- 陈道明|一个生日,娱乐圈中的世态炎凉,在69岁陈道明身上体现得淋漓尽致
