【发布时间】:2011-09-03 09:27:41
【问题描述】:
在我们的基础实体类(所有实体都派生自)中,除其他外,我们有 2 个方法。一个用@PrePersist注释,基本上只设置dateCreated,另一个用@PreUpdate注释,设置dateUpdated字段。
这非常有效,因为我们不希望在创建时设置 dateUpdated 字段。作为设计的一部分,我们还创建了两个方法protected,这样其他开发人员就不会去明确地弄乱这两个日期(也没有设置器)。
此外,我们可以通过在实际实体上定义一个方法并使用@PrePersist 对其进行注释,从而轻松地扩展任何实体以在创建时设置dateUpdated 字段,因此这部分已涵盖。
现在,我目前的问题是,有一种情况我们想显式更新实体上的 dateUpdated 字段,而不更改其上的任何数据(基本上是 touch 它)。有没有一种优雅的方式来做到这一点?我真的不想实现一种更改其中一个字段然后将其更改回来的方法。而且我们希望继续拥有没有这些字段的 setter 方法的实体。
谢谢!
【问题讨论】: