作业帮 > 综合 > 作业

spring MVC 我想在控制层或者Service添加一个事务,就是同时对一张表的两种操作

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/11/08 04:32:01
spring MVC 我想在控制层或者Service添加一个事务,就是同时对一张表的两种操作
这是spring的批注式事务管理
你应该去找spring的书 或 官方文档看看
这里你需要理解的是 事务的传播行为
传播行为主要是用来告知何时该开始一个新的事务 或者 何时暂停一个事务等
如:Propagation.REQUIRED 就是传播行为中的一种
表示如果它的外部已经存在一个事务;则无需再开始新的事务;(他自然在这个事务中)
如果外面没有事务;则开始一个新的事务
所有这种事务声明是可以嵌套的(虽然事务声明可以嵌套,但事务本身并没有嵌套,当然事务是不可嵌套的;正像上面讲的一样)
---------------------------------------------------------------------------
如你的问题中 同时对一张表的两种操作
如果这两个操作封装在不同的方法中,只需将这两个方法都声明为Propagation.REQUIRED
并把更上一层调用这两个子方法的 方法也声明为Propagation.REQUIRED
这种方式比较灵活,两个方法即可独立开始事务;也可加入上层事务;具体要看业务需要
如果这两个操作封装在一个方法中,只需要将这个方法都声明为Propagation.REQUIRED即可