`
roadrunner
  • 浏览: 17154 次
  • 性别: Icon_minigender_1
  • 来自: 无锡
文章分类
社区版块
存档分类
最新评论

Hibernate Envers使用笔记

阅读更多

 

在项目中尝试使用Envers对实体加入版本控制,以达到对实体更动进行监控的目的。

 

Hibernate Envers版本:envers-1.2.2.ga-hibernate-3.3

 

 

Envers部分功能:

 

  1. 支持JPA规范中定义的所有映射关系
  2. 支持Hibernate中扩展自JPA规范的映射关系,如自定义类型,"简单类型(String, Integer等)"的集合
  3. 使用"revision entity"为每个revision提供日志记录
  4. 查寻历史数据

Envers目前不支持的功能:

 

  1. Bags
  2. Collection of compononents
  3. @OneToMany + @JoinColumn

 

关于revision:

 

 Reference文档中
Basically, one transaction is one revision (unless the transaction didn't modify any audited entities).

As the revisions are global,having a revision number, you can query for various entities at that revision, retrieving a (partial) view of the database at that revision.

You can find a revision number having a date, and the other way round, you can get the date at which a revision was commited.

---------------------

 

 

在JPA或Hibernate配置文件中加入Envers相关配置(为不同的EJB event添加对应Envers的listener)。

 

对于需要Audited功能的实体,在类上添加"@Audited"注释。如果只需要对类的部分property添加audit控制,则只要为对应property添加"@Audited"注释。

 

 

 

分享到:
评论

相关推荐

    hibernate_reference-Hibernate Envers User Guide

    通过一个简短的例子来展示如何使用Hibernate Envers。在这个例子中,用户可以了解到如何对实体进行标记以便于审计,以及如何查询历史版本的数据。 #### 四、配置 - **基本配置**:介绍了启动Envers的基本设置步骤,...

    envers hibernate

    要使用 Envers,首先需要在 Hibernate 的配置文件或应用的启动代码中进行设置。主要的配置选项包括: - `hibernate.envers.audit_table_suffix`:指定审计表的后缀,默认为 `_AUD`。 - `hibernate.envers.default_...

    Springboot hibernate envers使用过程详解

    `spring.jpa.properties.org.hibernate.envers.audit_strategy`设置了审计策略,这里使用了`ValidityAuditStrategy`,它基于时间戳来存储版本信息。`spring.jpa.properties.org.hibernate.envers.audit_strategy_...

    Hibernate Envers.docx

    Hibernate Envers 是一个强大的审计框架,它与 Hibernate ORM 框架紧密集成,用于记录数据库实体的历史版本。Envers 的主要目标是为应用程序提供数据变更的跟踪,以便于数据恢复、合规性检查以及问题分析。 Envers ...

    hibernate-envers-demo:使用Hibernate Envers,Spring Boot和AngularJS的简短演示

    Hibernate启用演示问题陈述这是一个使用Hibernate Envers,Spring boot和AngularJS的演示项目。 它旨在作为称为“四眼原理”( )的实际用例的解决方案。 此用例的主要参与者是“制造者”和“检查者”。 第一个将对...

    hibernate-envers-4.2.4.Final.jar

    hibernate-envers-4.2.4.Final.jar

    hibernate3参考资料

    在项目中使用Hibernate Envers 需要在Hibernate配置文件中启用它,并指定要进行审计的实体。这通常在`hibernate.cfg.xml`或对应的`persistence.xml`文件中完成,通过添加`<property name="hibernate.archive.auto...

    spring4.2+hibernate5环境开发全部jar包

    开发者可以利用Spring的DI和AOP来管理对象的生命周期,使用Spring MVC构建Web层,通过Hibernate进行数据持久化操作。同时,两者都支持大量的社区插件和扩展,如MyBatis、Thymeleaf等,进一步丰富了开发工具和功能...

    JPA + Hibernate 3 CRUD操作历史审计日志的解决方案

    为了记录CRUD操作的历史,我们可以在实体类上添加一些特殊的注解,例如Hibernate的`@org.hibernate.envers.Audited`。这个注解告诉Hibernate Envers模块(一个用于审计的扩展)该实体需要被审计,Envers会自动生成一...

    hibernate-envers:有机会使用 Envers 对 eXo 的 wiki 实体进行版本控制

    “hibernate-envers:有机会使用 Envers 对 eXo 的 wiki 实体进行版本控制” 暗示我们将讨论如何利用Hibernate Envers这个强大的审计框架,为eXo平台中的wiki实体实现版本管理功能。Envers是Hibernate的一个扩展,...

    envers中文文档(部分)

    - **DDL生成**:如果使用 `hibernate.hbm2ddl.auto` 配置项,Envers会在启动时自动创建所需的审计表。也可以使用 `org.hibernate.tool.EnversSchemaGenerator` 或者 Ant 任务来自定义生成 DDL 语句。 ##### 2.3 ...

    Beginning Hibernate: For Hibernate 5

    - **版本控制**: 使用 Hibernate Envers 来实现对数据版本的追踪。 #### 目标读者 - **Java 开发者**: 本书面向有一定 Java 和数据库经验但对 Hibernate 不熟悉的开发者。 - **对象关系映射**: 适用于希望学习如何...

    hibernate.5.1.0.jar全部

    包含hibernate所有所需jar包还有一些其他包日志包、...hibernate-envers-5.1.0.Final.jar hibernate-c3p0-5.1.0.Final.jar hibernate-jpa-2.1-api-1.0.0.Final.jar hibernate-java8-5.1.0.Final.jar ........ 总共41个

    hibernate-release-5.2.10.Final

    Hibernate,作为Java领域中广泛使用的对象关系映射(ORM)框架,一直以来都是开发人员的重要工具。5.2.10.Final是Hibernate的一个稳定版本,它在前一版本的基础上进行了诸多改进和优化,为开发者提供了更高效、更...

    hibernate-tutorials_java_hibernate_Eclipse_fallenweg_

    在Eclipse中配置和使用Hibernate非常方便。本教程将引导读者设置Eclipse开发环境,安装Hibernate插件,创建项目,并配置Hibernate的必要属性,如数据库连接信息。 3. **pom.xml** Maven是Java项目管理的重要工具...

    spring-jpa-envers:一个示例项目,用于检查Spring Data对Hibernate Envers的支持

    概述 该应用程序演示了如何将与用于数据库记录的审计和版本控制。执照该示例应用程序及其关联的源代码全部按照以下许可条款提供。 Copyright (C) 2014Permission is hereby granted, free of charge, to any person ...

    hibernate-envers-5.3.10.Final.jar

    java运行依赖jar包

    hibernate-4.2.3.required

    10. **插件扩展**:丰富的插件生态系统,如Hibernate Search提供了全文搜索功能,Hibernate Envers提供了审计追踪服务。 压缩包子文件的文件名称列表虽然没有具体给出,但通常会包含以下核心组件: - hibernate-...

Global site tag (gtag.js) - Google Analytics