2011-11-22 56 views
3

我使用Glassfish的2和容器管理的持久性与Hibernate 3.2作为持久性提供。我有我的业务逻辑,操纵一些持久化实体,已通过EntityManager已经获取一些finder方法。操纵只是改变String属性(删除元素从一个集合导致了同样的效果)。
我不打电话像保存坚持在我的EntityManager。我只想将一些更改的实体返回给我的客户。Glassfish的/ Hibernate的保存,而无需调用保存明确地

似乎当容器提交更改我的实体会自动保存交易。是否有一些神奇的Hibernate或Glassfish行为到目前为止我完全错过了?

+0

请问我们能看到一些代码吗? – Zoidberg

回答

4

如果你已经获取的实体处于Managed状态,那么在交易结束时,对实体所做的更改将是持久的。这是JPA提供商必须遵守的合同。这个问题可能对您有所帮助:Transactional saves without calling update method