spring 声明事务处理配置
发布网友
发布时间:2022-05-25 23:12
我来回答
共2个回答
热心网友
时间:2023-12-14 13:35
一般以Spring作为应用层框架的程序,事务一般都声明在service层。
Spring中的事务功能是以切面方式织入到业务代理对象中的,如果你在service中的A方法直接调用了service的B方法,不管B方法配置了什么样的事务属性,A在调用B时都不会走B的事务的。
因为这种情况,A方法调用B方法只是简单的方法调用,完全没有事务什么事。
如果你要在A方法中调用B方法,并且还要保留B方法中声明的事务属性,那么只能在A方法中从Spring容器中获得service对象(也就是织入事务的业务代理对象),然后在调用service对象的B方法,这样才能保留B方法声明的事务。
热心网友
时间:2023-12-14 13:35
什么叫分开事务提交?追问for 循环{
数据库操作 --- 提交事务了
}
不是下面的样子
for 循环{
数据库操作
}
提交事务了
追答恕我才疏学浅,在我看来,通过配置的方式实现是不可能的。
我只通过transactiontemplate以编码的方式实现过。