Hibernate JPA。如何仅在合并操作中忽略某些字段
我希望在Hibernate JPA。如何仅在合并操作中忽略某些字段,hibernate,jpa,merge,ignore,Hibernate,Jpa,Merge,Ignore,我希望在实体中有字段:creationDate和updateDate 我希望此字段在持续操作时在db中更新。 但是我想在数据库中的merge操作中,字段creationDate不会被更新 我正在寻找这样的JPA注释: @TransientOnMerge或@IgnoreOnMerge 但是我什么也找不到 可能吗? 您可以提供帮助吗?您可以将@Column(updateable=false)添加到实体的字段。您可以在@PrePersist或@postersist上使用并更新日期 PrePersist
实体
中有字段:creationDate
和updateDate
我希望此字段在持续操作时在db中更新。
但是我想在数据库中的merge
操作中,字段creationDate
不会被更新
我正在寻找这样的JPA注释:
@TransientOnMerge
或@IgnoreOnMerge
但是我什么也找不到
可能吗?
您可以提供帮助吗?您可以将@Column(updateable=false)添加到实体的字段。您可以在@PrePersist
或@postersist
上使用并更新日期
PrePersist:此回调方法是在之前为给定实体调用的
相应的实体管理器对该实体执行持久化操作
实体
PostPersist:此回调方法在
相应的实体管理器对该实体执行持久化操作
实体
这是个好办法。在@PreUpdate
方法中,我可以从dbcreationDate
中获取,并在更新之前将其设置为object。哪种效果是正确的。但是我认为,`@Column(updateable=false)是一个更好的方法。如果它能工作,它将解决我的问题。我会检查的。谢谢。它很有魅力。非常感谢。这并不是一直都有效。使用updateable=false
设置,从merge
函数传回的托管实例仍会覆盖这些值。忽略仅发生在DB级别。我想获取实例的更新版本。我该怎么做?答案也在这里: