Jpa 在@PrePersist中更改父实体不保存更改
我有两个实体: 父母亲 (id、姓名、最后一个子女号码) 及 孩子(身份证号码) 当我将一个子项添加到父项的子项列表中时,子项将获得新的数字,父项实体属性lastNumberOfChild将递增1。我希望在执行entityManager.merge(父级)时,在刷新之前(在整个情况下这很重要)发生这种情况。 我已经尝试在子实体上使用@PrePersist注释来实现这一点。它只在半小时内起作用。 该属性已由@PrePersist方法更改,但此后未保存到数据库 你有没有想过我怎样才能做到这一点Jpa 在@PrePersist中更改父实体不保存更改,jpa,eclipselink,Jpa,Eclipselink,我有两个实体: 父母亲 (id、姓名、最后一个子女号码) 及 孩子(身份证号码) 当我将一个子项添加到父项的子项列表中时,子项将获得新的数字,父项实体属性lastNumberOfChild将递增1。我希望在执行entityManager.merge(父级)时,在刷新之前(在整个情况下这很重要)发生这种情况。 我已经尝试在子实体上使用@PrePersist注释来实现这一点。它只在半小时内起作用。 该属性已由@PrePersist方法更改,但此后未保存到数据库 你有没有想过我怎样才能做到这一点 谢谢
谢谢你的每一个想法我发现在@PrePersist中你不能修改父实体(原因是优化)。所以我必须在执行merge(entity)之前修改所有的实体。这很奇怪,我希望它能在prePersist中找到,您使用的是什么版本?您使用的是字段访问还是属性访问?我发现在@PrePersist中无法修改父实体(原因是优化)。所以我必须在执行merge(entity)之前修改所有实体。(我正在使用eclipselink 2.3.2,属性访问)。