【发布时间】:2012-02-29 15:45:10
【问题描述】:
一旦我的实体发生变化,我正在使用 EntityListeners (@PreUpdate) 执行某些操作。
但是我注意到实体内部集合的更改不会触发 JPA 实体侦听器,这是有道理的,因为包含实体的表没有更改,但多对多表却发生了变化。
有没有办法让实体监听器在集合发生变化时触发?
【问题讨论】:
-
为什么不将 PreUpdate 属性放在子实体而不是父实体中?
-
@perissf 正在更新的表是多对多表,在我的代码中未映射为实体。
-
嗨,我注意到使用 JPA/Hibernate 的行为相同。这对我来说是个问题,因为如果例如我向用户添加角色(多对多集合),则不会发生由 EntityListener 触发的审计。您找到解决此问题的方法了吗?
标签: java jpa persistence listener