gpt4 book ai didi

java - 使用 Spring 进行基于现场的审计

转载 作者:行者123 更新时间:2023-12-02 09:31:30 24 4
gpt4 key购买 nike

在我的实际项目(Spring Boot 2 with JPA on Hibernate)中,我需要实现基于字段的审计跟踪。如果用户更改任何字段,则他/她需要输入原因。如果更改对象的多个字段,则每个更改都必须单独具有原因文本。

审核方面有2个要求:

  1. 如果我选择一个字段,我必须列出所有更改及其原因。
  2. 如果我选择主要(由多个其他对象构建)业务对象,我必须列出所有更改。

我不需要恢复任何旧状态。

我过去已经使用 Hibernate Envers、JaVer 库和 JPA 审核功能进行简单审核,其中更改是在对象级别处理的,而不是在字段级别处理的。但在实际情况中,我不知道应该向哪个方向深入挖掘。

最佳答案

Hibernate envrs 支持基于字段的审核。此外,您可以指定一个自定义修订实体,您可以在其中存储每个修订的额外信息,例如用户和原因。JPA 审计不处理您的情况。它只是使您能够使用操作回调,例如@PrePersist 或@PostUpdate。JaVer 可能是 Hibernate Envrs 的替代品,但由于您已经使用 Hibernate,因此将 Envrs 集成为同一系列的工具会更容易

关于java - 使用 Spring 进行基于现场的审计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57926022/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com