如何在Spring MVC中使用SQL实施审计跟踪?

时间:2018-06-24 10:36:41

标签: mysql spring spring-mvc jpa spring-data-jpa

我们为 UAT 开发了Spring MVC 应用程序。 现在我们的客户正在要求审计追踪。 要求应该是正确的跟踪( SQL条目或文件 ),并且其中一个用户已经过审核。

2 个答案:

答案 0 :(得分:0)

我猜您想审核每个数据库事务。您可以使用

@PrePersist
public void onPrePersist() { ... }

@PreUpdate
public void onPreUpdate() { ... }

@PreRemove
public void onPreRemove() { ... }

在持久化此实体之前。 onPrePersist()将被调用,您可以添加该条目 到另一个表说AUDIT_LOG

有很多可用的示例

database-auditing-jpa

auditing

答案 1 :(得分:0)

看看Hibernate Envers(http://hibernate.org/orm/envers/)。通过这种依赖性,您可以启用所有数据库实体的审核。如果您使用的是Spring Security,则还可以审核哪个用户进行了更改。 Josh Long(@starbuxman)发布了一个有关Hibernate Envers(https://www.youtube.com/watch?v=2E8_0Qxi6Tg)的精彩视频