Ahm*_*leh 9 java spring hibernate jpa java-ee
在弹簧容器中,使用以下代码:
public class A {
@Transactional
public void m1() {
...
b.m2(); // call in a new transaction
...
}
}
public class B {
@Transactional(propagation = Propagation.REQUIRES_NEW)
public void m2() {
...
}
}
Run Code Online (Sandbox Code Playgroud)
什么时候创建的交易完全m2()提交?一旦m2()调用结束,或一旦m1()调用结束?
@TransactionAttribute(TransactionAttributeType.REQUIRES_NEW)什么时候提交?为EJB回答它,但它似乎与JPA不一样.
我调试了它,我只能m2()在m1()结束后看到DB 的效果,但这对我来说似乎很奇怪,我在这里错过了一些东西吗?
更新:
我将检索m1()到的实体传递给m2()并从那里更新.所以,实际上合并实体m2()解决了这个问题并且Mik378答案是正确的.
| 归档时间: |
|
| 查看次数: |
9473 次 |
| 最近记录: |