带有 Spring JTA 的休眠 5
Posted
技术标签:
【中文标题】带有 Spring JTA 的休眠 5【英文标题】:Hibernate 5 with Spring JTA 【发布时间】:2016-01-12 16:34:23 【问题描述】:我正在使用:
休眠 5.0.2 春季 4.2 Atomikos 3.9.3官方文档说你只需要设置jtaTransactionManager,一切正常:
<bean id="sessionFactory" class="org.springframework.orm.hibernate5.LocalSessionFactoryBean">
<property name="dataSource" ref="atomikosDataSource" />
<property name="jtaTransactionManager" ref="jtaTransactionManager"/>
[...]
</bean>
不幸的是,会话没有刷新 - 没有写入发生。有什么问题?
【问题讨论】:
【参考方案1】:问题在于 Hibernate 5 要求我们设置以下属性,而 Spring 还没有自动完成:
<bean id="sessionFactory" class="org.springframework.orm.hibernate5.LocalSessionFactoryBean">
[...]
<property name="hibernateProperties">
<props>
[...]
<prop key="hibernate.transaction.coordinator_class">jta</prop>
</props>
这为我解决了这个问题。
【讨论】:
我遇到了不同的问题。会话正在刷新,但连接从未释放。设置此属性解决了我的连接泄漏问题。 协调器类中的 jta 值是什么。我们不再需要定义 factory_class 了吗 只是想感谢 Jason B 的上述评论,并可能添加一些搜索词来帮助其他有失去连接问题的用户......我们遇到了失去连接的问题。我们运行了一个快速获得连接并且没有释放连接的工作。我们尝试了几种配置方式,直到我点击上面 Jason 的评论并解决了我们的问题。 这是为我做的。谢谢你好心的陌生人!以上是关于带有 Spring JTA 的休眠 5的主要内容,如果未能解决你的问题,请参考以下文章