当前位置: 首页 > 工具软件 > Envers > 使用案例 >

hibernate启用Envers审计功能

慕容齐智
2023-12-01

Hibernate的Envers是准用于在数据库中国审计日志和保持数据多版本的Hibernate套件项目

启用Envers后,当在应用程序的主表中添加、修改和删除数据时,就会在单独的数据库表中自动存储数据的副本

Envers会侦听Hibernate事件,并且当Hibernate在数据库中存储变更时,Envers会在其专用的表中创建数据的副本和记录一个版本

Envers会将工作单元中(即事务中的所有数据)修改分组为具有一个版本号的修改集。

可以使用Envers API编写查询以检索指定版本号或时间戳的历史数据

 

1.依赖

Envers依赖是独立的,没有在Hibernate-core中,如:

compile group: 'org.hibernate', name: 'hibernate-envers', version: '5.4.12.Final'

 

2.配置

有一些Hibernate属性用于配置Envers的行为,下面是JPA中的基本配置:

<!-- audit持久化单元 -->
    <persistence-unit name="czy.demo.jpa.hibernate.audit" transaction-type="RESOURCE_LOCAL">

        <provider>org.hibernate.jpa.HibernatePersistenceProvider</provider>
        <class>czy.demo.jpa.hibernate.audit.User</class>
   
 类似资料: