Khu*_*shi 2 hibernate auditing hibernate-envers spring-data-jpa spring-boot
我正在为我的项目使用Spring数据JPA和Spring Boot.
我有对象的审核要求(创建/更新/删除).我可能还需要获取特定对象的审核修订版.我已经在网上检查过Spring数据无法获得修订并且不跟踪删除?
所以我的问题是:
1)我们可以将Hibernate envers与Spring数据JPA集成吗?
2)我们有本机查询,HQL和Spring数据JPA更新/保存/删除动态查询,那么Hibernate envers能够跟踪所有对象吗?
由于我是审计新手,请告诉我上述问题.
谢谢.
我们可以将Hibernate envers与Spring数据JPA集成吗?
是的,Hibernate Envers直接与Hibernate ORM直接集成,而且由于Spring Data JPA已经与Hibernate ORM集成,因此您可以开箱即用.
我们有本机查询,HQL和Spring数据JPA更新/保存/删除动态查询,那么Hibernate envers能够跟踪所有对象吗?
只要您通过会话保存/更新或EntityManager的持久/合并操作操作实体,Hibernate将为Envers引发必要的事件以跟踪您的更改.
如果您使用Native SQL或JPA的CriteriaUpdate/ CriteriaDeleteoperations来操作数据库记录,那么没有 Envers将不会拾取这些更改.这是因为Hibernate不会为允许Envers审核这些更改的批量或无状态操作引发事件.
这是可能的,很容易!我使用这些技术做了一个示例项目:Spring引导,Spring数据jpa和带有Envers的hibernate来审计一些带有关系的表.
以下是示例:https://github.com/juanca87/example-envers
我希望它对您有用,如果您有任何疑问,请告诉我.
| 归档时间: |
|
| 查看次数: |
9807 次 |
| 最近记录: |