【问题标题】:In javaee6 is there a way to know which fields have update on an entity?在 javaee6 中,有没有办法知道实体上哪些字段有更新?
【发布时间】:2013-08-06 02:19:46
【问题描述】:

我目前正在研究实体日志记录机制。并且我已经添加了一个带有 PreUpdate 等的实体监听器。是否可以知道哪些字段已更新?

谢谢。

【问题讨论】:

    标签: hibernate persistence jpa-2.0


    【解决方案1】:

    我认为 org.hibernate.Interceptor 符合您的需要。
    只需扩展 EmptyInterceptor 并使用 onFlushDirty() 和其他方法。
    希望能帮到你。

    编辑:
    使用注释,您可以查看here:您可以根据需要使用实体生命周期和存储/比较属性

    【讨论】:

    • 嗨,我见过这种方法,但我认为我不能将其用作注释?会话会话 = factory.openSession(new MyInterceptor());我不在我的应用中使用 SessionFactory。
    • 我在 SO 中找到了一个新的解决方案,但有点奇怪(IMO)。看看并检查是否有帮助!干得好!
    • 嗨,我以前看过那个链接,但我不想将属性保存在另一个集合中。我想我只需要创建一个自定义 gson 序列化程序。
    猜你喜欢
    • 2015-12-10
    • 2020-08-01
    • 1970-01-01
    • 2018-08-14
    • 1970-01-01
    • 2023-03-10
    • 2023-03-03
    • 2013-09-10
    • 2021-09-07
    相关资源
    最近更新 更多