【问题标题】:Envers - Select entities that have been editedEnvers - 选择已编辑的实体
【发布时间】:2013-08-14 11:27:39
【问题描述】:

我正在尝试实现一项功能以将 Android 应用与服务器同步。

在同步时,android 中的应用程序会登录并显示您上次同步的时间(目前这只是理论)。

问题是,服务器需要选择自报告日期以来发生变化的所有实体,由客户过滤,并将它们(以 json 格式)回答给应用程序;

另一种方法是在每个实体中创建一个列“lastUpdate”。 但是,Web 系统已经使用了 Hibernate Envers。实体用@audited注解。

如何使用revinfo 表选择自某个日期以来发生更改的所有实体? 记住我不需要实体的历史。只需要知道发生了什么变化。只有最新版本将被发送到安卓应用程序。 如何让被修改多次的实体在升级过程中只出现一次?

谢谢。

【问题讨论】:

    标签: java spring hibernate hibernate-envers


    【解决方案1】:

    根据关注点分离的原则,最好将此类应用程序逻辑与 revinfo 表分开。

    不太清楚您的案例的具体情况,但带有修订 ID 和布尔值(或日期)的连接表是一种跟踪此活动的低成本方式,同时让您的 Envers 审计数据保持干净状态。毕竟,您的业务逻辑可能会发生变化,用例可能会成倍增加,但对实体更改的审计可能会保持不变。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-06-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-07
      • 2018-06-22
      • 1970-01-01
      相关资源
      最近更新 更多