0

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

1)制造商创建一个创建实体(例如部门)的请求——数据不应该插入到实体表中。它必须记录在审计表中

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

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

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

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

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

1) Master-Detail 即 Dept 包含员工

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

3)以上所有用例都适用于主从。

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

提前致谢——Kiran.Kumar

4

1 回答 1

1

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

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

In your position, I would specify an interface, called "Verifiable" (or something like that), which defines an "approvalDate" and "approver". Your business methods would be in charge of retrieving the entities which are not approved yet and deal with them. Just note that it may not be feasible to store entities in one table first, then move entities to another.

于 2011-02-24T05:56:13.037 回答