在spring中向< tx:jtatransactionmanager/>注册的jta transactionmanager的默认名称是什么?我可以更改它吗?

m4pnthwp  于 2021-07-13  发布在  Java
关注(0)|答案(1)|浏览(336)

在SpringDocksSpringFramework5.1.3.releaseReference中,数据访问说:“对于标准场景,包括WebLogicServer和websphere,考虑使用方便的 tx:jta事务管理器/  配置元素。配置后,此元素会自动检测底层服务器,并选择平台可用的最佳事务管理器。”使用tx:jtatransaction/时,默认名称是什么?我能改一下名字吗?如果我需要在我的项目中使用两个transactionmanagers,我需要知道它的名称,以便指出正确的一个。

@Transactional("jta")  
public void method test()  
...  
}  
@Transactional("local")  
public void method test1()  
...  
}

谢谢。

8tntrjer

8tntrjer1#

我建议阅读定义 tx 命名空间。它明确地说明了什么是可能的,它做了什么。
来自赛义德 spring-tx.xsd 创建默认值 JtaTransactionManager 名为“transactionmanager”的bean,与“annotation-driven”标记所期望的默认bean名匹配。自动检测weblogic和websphere:创建 WebLogicJtaTransactionManager 或者 WebSphereUowTransactionManager 分别是。
正如所料,这个名字将是 transactionManager 而且没有办法改变这一点,因为在这个元素上没有属性或进一步的配置。

相关问题