java - 如何在 Hibernate 中创建审计日志跟踪?

标签 java mysql hibernate audit-trail

表结构如下:

id | createdby | createddate | tablename | columnname | primaryid | oldavalue | newvalue | remarks

我们得到分隔文件,其中我们有一些值要在 4 个表中更新。四个表各有 10 列。我们不知道要更新什么。因此,我们只需根据一个主 ID 更新整行。

现在这里的挑战是:

  1. 如何在Hibernate中获取表名、列名?

  2. 如何获取旧值;在更新期间?如何知道我们正在更新的字段具有旧值而我们现在正在插入新值? (我们还没有比较字段)

最佳答案

您可以实现 Hibernate 的 EmptyInterceptor。在 EmptyInterceptor 的方法中,您可以找到字段名称、先前值和当前值。

关于java - 如何在 Hibernate 中创建审计日志跟踪?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37670486/

相关文章:

mysql - 在另一个 jsp 文件中使用 ResultSet 值

java - java版本与我在环境变量中设置的版本不同

java - 如何通过单击 ListView 项并将值发送到对话框来显示来创建自定义对话框?

mysql - 将重要的 opencart 表移动到另一个数据库

java - 从 XML 文件中检索两条数据的最佳方法是什么?

mysql - SQL触发器语句

java - Hibernate jdbc 未找到合适的驱动程序

Java EE 和 struts 以及 JSP : java form population - action bean etc

java - 使用以下递归方法时出现 java.lang.OutOfMemoryError 异常

java - 当我想要返回结果列表时,如何修复Java中的 "class java.lang.Long cannot be cast to class java.lang.Integer"错误?