【发布时间】:2009-04-21 03:45:16
【问题描述】:
Hibernate 事务缓存模式似乎需要使用 JTA 事务管理器。在 Glassfish、Weblogic 等应用服务器中,Spring 可以使用 JTA 事务管理器。 Tomcat 没有 JTA 事务管理器。
人们在这种情况下使用了一个吗?还是人们只是不使用 Tomcat 的事务缓存模式?
【问题讨论】:
标签: java hibernate spring tomcat transactions
Hibernate 事务缓存模式似乎需要使用 JTA 事务管理器。在 Glassfish、Weblogic 等应用服务器中,Spring 可以使用 JTA 事务管理器。 Tomcat 没有 JTA 事务管理器。
人们在这种情况下使用了一个吗?还是人们只是不使用 Tomcat 的事务缓存模式?
【问题讨论】:
标签: java hibernate spring tomcat transactions
这取决于您的 ORM 实现,例如对于 JPA,Spring 有一个用于在 Java EE 容器之外使用的事务管理器。声明方式如下:
<bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager">
<property name="entityManagerFactory" ref="entityManagerFactory" />
</bean>
我通常使用注释来划分事务边界(使用@Transaction),为此您只需将这一行添加到配置文件中:
<tx:annotation-driven transaction-manager="transactionManager" />
存在于此 XSD 命名空间中:“http://www.springframework.org/schema/tx”
【讨论】:
Atomikos 是一种 JTA 事务管理器,可以与您的应用捆绑以在 Tomcat 部署中工作。
【讨论】: