2013-06-27 39 views
1

我们的团队坚持在Hibernate Envers和Spring AOP之间进行选择。基本上,我们想要审计数据库事务,特别是当用户从数据库中删除一个对象时。但是,我们不想审核所有表格。我们知道,使用Spring AOP,我们可以将此作为一个交叉问题,并且只要在DAO中执行delete()方法,我们就可以记录删除。我们的问题是:Hibernate Envers更容易,更适合这个问题,还是Spring AOP是一个可接受的解决方案?任何方向,有一些证据,将非常感谢我们的团队。Hibernate Envers vs Spring AOP

回答

2

我刚开始使用Hibernate Envers进行审计,到目前为止我对此非常满意。 优点:
1.我们实际上不需要编写一行代码。
2.它还通过RevisionEvent自动捕获userName和timestamp,这是一个非常简单的配置。
3.代码遵循JPA注释,而不是休眠。
4.如果有人在使用hibernate,那么为什么不使用它的全部功能。
5.此功能(Envers)专门用于捕获审计。人们不断致力于升级并使其更加便于用户使用。
6.一个人可以写他自己的事件侦听器,如更新,删除,插入等:
缺点:
1.创建大量的AUD_表。但是我们可以配置我们想要的AUDIT表。
2.它永远不会自动捕获HQL查询。

+1

您可以评论Envers审计的同步/异步行为吗? –