我已经阅读了JTA JSR一段时间了,但我仍然无法确定谁应该提供UserTransaction和TransactionManager接口的实现? JTA规范所说的是:
javax.transaction.UserTransaction接口提供了 应用程序控制事务边界的能力 编程。
和
javax.transaction.TransactionManager接口允许 应用程序服务器代表控制事务边界 正在管理的应用程序。
我怀疑这些实现是由应用服务器提供的,但我不确定。
答案 0 :(得分:2)
是的,应用程序服务器提供了这些对象的实现。应用程序无法直接访问TransactionManager
(仅TransactionSynchronizationRegistry
),但UserTransaction
可以通过@Resource
或java:comp/UserTransaction
JNDI查找字符串注入。