【问题标题】:Maker-Checker Support EnversMaker-Checker 支持 Envers
【发布时间】:2011-07-03 06:57:54
【问题描述】:

谁能帮我解决这些使用 envers 的 maker-checker 功能用例。

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

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

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

4) Checker 授权请求 -- 数据从审计表移动/覆盖到实体表。

5) 制造商请求修改实体 -- 实体表不会被修改。更改记录在审计表中。更改只会在授权后移动实体表。

该解决方案有望解决以下限制

1) Master-Detail 即 Dept 包含员工

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

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

我想从 envers 专家那里知道使用 envers 实现上述所有用例是否可行? Envers 需要进行哪些更改?

提前致谢 --Kiran.Kumar

【问题讨论】:

    标签: hibernate hibernate-envers


    【解决方案1】:

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

    我不是 Envers 方面的专家,但不,几乎没有一个案例适用于 Envers。原因很简单:您有太多特定用例,无法使用通用解决方案。

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

    【讨论】:

    • 谢谢partenon。我喜欢你的回答。 envers 用于审计。这是 jbpm/drools --Kiran.Kumar 等工具的工作
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-31
    • 1970-01-01
    • 2017-11-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多