的原因是什么?
javax.persistence.TransactionRequiredException: no transaction is in progress at org.hibernate.ejb.AbstractEntityManagerImpl.flush(AbstractEntityManagerImpl.java:971)
即使在
之后 <tx:annotation-driven/>
使用@Transactional
在Spring 3.1.1 + Hibernate 4.1中
答案 0 :(得分:0)
您必须使用交易包围调用代码。在Spring中,您可以使用@Transactional
注释或AOP事务划分。这是一个非常广泛的主题,从官方文档中的11. Transaction Management开始。
对于初学者来说,定义JPA事务管理器bean(可能你已经有了),添加<tx:annotation-driven/>
并使用@Transactional
注释你的方法。