【发布时间】:2010-09-14 11:35:43
【问题描述】:
class MyService {
public void a() {
synchronized(somekey) {
b();
}
}
@Transactional(propagation = Propagation.REQUIRES_NEW)
public void b() {
...do DB works...
}
}
我的目标是
- 1 - 获取密钥
- 2 - 开始事务
- 3 - 提交事务
- 4 - 释放钥匙
当我从外部调用 a() 方法时,事务不起作用。
有什么建议吗?
谢谢。
【问题讨论】:
-
“不起作用”是什么样的?异常和错误消息会很有帮助。
-
没有错误;只是事务没有启动,每个插入操作都直接进入数据库
-
你是如何配置你的事务管理器的?
标签: java spring transactions concurrency synchronization