Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在不使用数据库触发器的情况下,使用spring/hibernate检查日志中是否存在任何持久性更改_Java_Hibernate_Spring_Logging_Auditing - Fatal编程技术网

Java 在不使用数据库触发器的情况下,使用spring/hibernate检查日志中是否存在任何持久性更改

Java 在不使用数据库触发器的情况下,使用spring/hibernate检查日志中是否存在任何持久性更改,java,hibernate,spring,logging,auditing,Java,Hibernate,Spring,Logging,Auditing,每次用户对记录进行更改并保存时。我想要一份变更的审核日志。例如,我们有一个客户表,gui显示客户信息和销售,我还希望gui显示该客户的审核日志。在对客户进行每项更改之前和之后 我可以使用数据库触发器,并在每次插入/更新/删除时在日志表中创建一条新记录(所有表都有一个日志表,或者每个表都有一条记录,例如customer_log) 然而,我使用的是Spring3.1和Hibernate4,并试图将所有内容(业务逻辑)都保存在Java中,而不是数据库和SPOC/触发器之外。我认为春季aop可能是合适的

每次用户对记录进行更改并保存时。我想要一份变更的审核日志。例如,我们有一个客户表,gui显示客户信息和销售,我还希望gui显示该客户的审核日志。在对客户进行每项更改之前和之后

我可以使用数据库触发器,并在每次插入/更新/删除时在日志表中创建一条新记录(所有表都有一个日志表,或者每个表都有一条记录,例如customer_log)

然而,我使用的是Spring3.1和Hibernate4,并试图将所有内容(业务逻辑)都保存在Java中,而不是数据库和SPOC/触发器之外。我认为春季aop可能是合适的


对于我的系统上发生的每个
session.save(myEntity)
,我还想做一个
session.save(myEntityLog)

对于框架,您至少有两个选择,可以在应用程序Lazyer中处理这个问题

  • (得到了一些支持)也是
  • 或者你在
    PostPersis
    t和朋友的帮助下手工完成