Sha*_*oor 5 spring-transactions spring-boot
我正在使用@Transactional 来管理交易
@Override
@Transactional
public List<FooBo> save(Foo foo, Foo foo2) {
logger.debug(() -> String.format("FooService.save()"));
repository.save(foo);
return repository1.save(foo2);
}
Run Code Online (Sandbox Code Playgroud)
我在使用时找不到交易 ID TransactionAspectSupport.currentTransactionInfo()
还有其他方法吗?(如果 Spring 维护事务的唯一 ID)
更新:我的场景是我想根据事务 ID 在静态上下文中添加一些信息。并在事务提交后需要该信息。
例如..基于事务ID,我想将一些对象放在静态上下文中的地图中,提交后需要利用这些对象..这就是我的想法
您可以做到这一点的唯一方法是在方法中自己创建事务,通过 Spring 应用程序上下文获取事务管理器并使用包含您可以控制的自定义 ID 的getTransaction()new 进行调用。TransactionDefinition然后,您将能够使用刚刚为逻辑设置的 ID,但您只需手动commit()或rollback()在完成后进行事务
| 归档时间: |
|
| 查看次数: |
3081 次 |
| 最近记录: |