Maker-Checker支持Envers

时间:2011-02-24 04:31:54

标签: hibernate hibernate-envers

任何人都可以帮助我如何使用envers解决制造商检查功能的这些用例。

1)Maker创建创建实体的请求(例如部门)            - 不应将数据插入实体表。它必须记录在审计表

2)Checker会检索实体列表以进行授权            - 应从审计表中查询数据

3)Checker查看待处理的请求                 - 显示原始记录和更改

4)检查员授权该请求            - 将数据从审计表移动/覆盖到enity表。

5)Maker请求修改实体             - 不会修改实体表。更改记录在审计表中。更改将仅在授权时移动实体表。

预计解决方案将解决以下约束

1)Master-Detail即,Dept包含Employees

2)批量授权,即当某个部门有10,000名员工时,授权过程应具有合理的性能。最终用例必须执行数据验证+授权规则+将数据从审计表移动到实体表。

3)以上所有用例均适用于Master-Detail。

我想从envers专家那里了解使用envers实现上述所有用例是否可行? Envers需要做哪些改变?

提前致谢 --Kiran.Kumar

1 个答案:

答案 0 :(得分:0)

  

我想从envers专家那里了解使用envers实现上述所有用例是否可行?

我不是Envers的专家,但不是,几乎没有一个案例可以与Envers合作。原因很简单:您有太多特定用例来使用通用解决方案。

在你的位置,我会指定一个名为“可验证”(或类似的东西)的界面,它定义了“approvalDate”和“approver”。您的业​​务方法将负责检索尚未批准的实体并处理它们。请注意,首先将实体存储在一个表中,然后将实体移动到另一个表中可能是不可行的。