自定义检测更改

时间:2010-04-01 08:26:44

标签: hibernate

如果会话包含必须与数据库同步的任何更改,我现在可以 session.isDirty()

但我有一个简单的字段(修改日期),我想被它忽略。 示例:object Person(名称,年龄,日期修改)。

如果我只修改了datemodification字段,我希望session.isDirty()或其他类似的方法返回false,所以最后不会发生sql更新。

提前致谢。 此致

2 个答案:

答案 0 :(得分:0)

如果您使用的是Hibernate Annotations,则可以使用 @Transient 注释 datemodification ,这意味着对该字段的任何更改都不会保留。

答案 1 :(得分:0)

我认为您需要使用Interceptor并覆盖onFlushDirty()方法。 This看起来像是一个讨论相同问题的论坛。