如何在Spring和JPA / Hibernate中实现工作单元?

Pio*_*otr 2 java spring domain-driven-design hibernate jpa

我试图了解UOW的概念以及如何在DDD的spring / jpa / hibernate应用程序中实现它。我使我的方法具有事务性,但是如何确保事务中所有已更改的实体都保持不变?是通过使用级联集合还是其他方法?

axt*_*avt 6

Hibernate在内部实现工作单元。也就是说,对事务内的持久性实体所做的所有更改都会自动持久化(除非您使用进行了事务readOnly = true)。

需要级联选项以配置瞬态分离实体的图到持久状态的过渡

也可以看看:

  • @Piotr:如果“User”来自事务外部,则可能是_detached_,因此您需要将“merge()”它到持久化上下文中,以使其成为_persistent_。 (2认同)