【发布时间】:2015-12-05 23:50:55
【问题描述】:
我有一个无状态的 bean 类 TestBean:
package samples;
import javax.ejb.*;
import javax.persistence.*;
@Stateless
public class TestBean {
@PersistenceContext
EntityManager em;
@TransactionAttribute(TransactionAttributeType.REQUIRES_NEW)
public void doIt() throws Exception {
em.createQuery("UPDATE Employee e SET e.salary = e.salary * 1.05").executeUpdate();
throw new Exception("Let us stop it!");
}
}
EntityManager 是否提交事务并进行更新?
【问题讨论】:
-
当你尝试它时会发生什么?我们无法真正明确地告诉您是或否,因为我们不知道您的完整环境是什么。理论上,是的,事务应该回滚。您为什么不尝试一下并告诉我们。
-
@DuncanKinnear 这是一个纯粹的 JPA 问题,而不是像 Hibernate 这样的实现。
标签: jpa ejb entitymanager