-
0 votesanswersviews
Spring 天启动与hibernate envers迁移脚本mysql
我在 spring 启动时使用迁移脚本创建MySQL数据库时遇到问题 . 我正在使用flyway,配置没有问题 . 正如您在下图中看到的那样,这是我用来创建用户表的代码,而我正在使用所有其他表 . 我也在spring启动应用程序的应用程序属性中使用spring.jpa.hibernate.ddl-auto = update . 我收到两个我不理解的错误,它们是: 表'database.user... -
2 votesanswersviews
带有liquibase的hibernate-envers
我的问题可能很简单,但是hibernate-envers的文档说我需要两个步骤来使hibernate envers工作: 类路径上的hibernate-envers jar, 实体上的@Audited注释 . 首先我补充说: <dependency> <groupId>org.hibernate</groupId> <artif... -
19 votesanswersviews
使用来自Hibernate实体的现有数据填充修订表
我正在为现有的hibernate实体添加envers . 到目前为止,审计工作一切顺利,但查询是一个不同的问题,因为修订表没有填充现有数据 . 还有其他人已经解决了这个问题吗?也许您已经找到了一些方法来使用现有表填充修订表?我想我会问,我相信其他人会发现它很有用 . -
2 votesanswersviews
使用Hibernate Interceptor的onvers,onDelete
我'm trying to implement a simple Envers + interceptor based approach to audit my Hibernate entities. For this, as per the typical approach, there'是 BaseEntity ,包含所有审计属性: BaseEntity{ createdOn; ... -
8 votesanswersviews
使用Hibernate Envers进行集成测试
我正在尝试围绕一些被审计的实体构建一些测试 . 我的问题是envers只审计事务提交 . 我需要创建/编辑一些测试对象,提交事务然后检查修订 . 与envers进行集成测试的最佳方法是什么? 更新:这是我想要实现的非常糟糕的,非确定性的测试类 . 我更愿意这样做,而不依赖于测试方法的顺序 首先在单个事务中创建帐户和account_transaction . 两个审计条目均适用于修订版1 . 第二次... -
0 votesanswersviews
Hibernate Envers:使用集合属性检索实体的正确修订版
我有两个经审计的实体,A和B.实体A包含实体B的集合(注释为一对多关系) . 将新的A实例插入数据库时,A和B的所有行都处于同一版本(假设修订版1) . 然后,A上有一个更新,它只影响实体B的实例 . 因此,在更新之后,实体A仍处于修订版1,而B的实体处于修订版2(包括审计表中的MOD条目) . 在版本3中,实体A被删除 . 因为实体B的集合用@Cascade注释,所以也删除属于A的实体B. 在... -
1 votesanswersviews
Hibernate Envers:如何获取给定修订版和给定实体类的revision_type信息
我正在使用Hibernate envers 3.6.3.Final . 我可以审计表,我可以看到 _audit 表填充了 revision_number , revision_type 和实体数据 . 我正在创建一个历史页面,我想在其中显示所有修订条目,以便当用户单击修订版ID时,我可以显示实体数据以及修订版本类型,即添加,删除或修改它 . 我正在尝试使用 AuditQuery ,但我不知道如何获... -
3 votesanswersviews
Hibernate允许跨多个事务进行单个修订
我使用Spring v2.5.5 / Hibernate v3.6.3和Hibernate Envers来审计更改 . 目前,正在为每个事务生成新的修订版 . 但是在我的应用程序中,当我过于频繁地执行非常小的工作单元时,例如每次事务更新1次,就会产生大量的审计记录 . 是否可以为某些小工作单元配置Envers以生成多个事务的单个修订,而不是每个事务1个修订 . -
6 votesanswersviews
如何强制Hibernate Envers在Spring @Transactional方法中提交修订
我正在使用Hibernate Envers来保存对象历史记录 . 在某些时候,我们想要捕获对象图状态的快照 - 我们可以通过了解相应的Envers修订来实现这一点,然后我们将其存储在审计记录中 . 但是我们有一个问题 . 父对象在我们创建和存储其子审计记录的同一事务中更新 - 完成Envers修订 . 我们可以得到最新版本: Number revision = reader.getRevision... -
1 votesanswersviews
如何使用Envers审核Hibernate读取?
我一直致力于应用程序审计,并已成功连接Hibernate Envers 4.3.11以捕获创建,更新和删除,但我找不到任何有关实体审计读取的文档 . 这可能与Envers一起使用还是最好依赖log4j或类似的? -
0 votesanswersviews
Hibernate Enver:缺少@AuditJoinTable行
给定由Envers审核的实体,其包含一个集合 . Entity A @Audited public class A{ @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private int id; .... @OneToMany @JoinColumn(name = "... -
0 votesanswersviews
Hibernate Envers“InvalidDataAccessApiUsageException:关联的实体管理器已关闭”
我有一个服务(控制器),其中包含一个逻辑,并为底层DAO对象创建事务 . 在其中一个方法中,我从数据库中读取实体,然后尝试使用Hibernate Envers找到它的历史版本 . @Named @Transactional public class DocCtrl { ... public synchronized List<DocCreateRespDTO> getUnappr... -
1 votesanswersviews
Hibernate Envers - 遍历关系
在我的应用程序中,我有几个经过审计的实体类,例如以下内容 .它包含与具有各种休眠注释的其他实体的多个HAS-IS关系 . @Entity @Audited public class Entity implements Serializable { private static final long serialVersionUID = 1L; @Id private I... -
3 votesanswersviews
Hibernate Envers - 包括发生更改的日期
我们刚刚开始使用Hibernate Envers,它适用于日志 what 已更改,但有没有一种方法可以记录 when 发生的变化? 那么,它可以在审计表中添加日期时间列吗? 根据Envers文档,这应该默认发生: 当Envers启动新版本时,它会创建一个新的修订实体,用于存储有关修订的信息 . 默认情况下,它仅包括修订号 - 整数值(int / Integer或long / Long) . 本质... -
1 votesanswersviews
@AuditJoinTable在使用Hibernate envers审核多对多关系时无法正常工作
我使用Spring Boot 1.3.2和Spring Data JPA 1.9.4与MS Sql server2014数据库进行映射多对多关系的过程 . 我有两个表实体Book&Publisher . 他们与BookPublisher表和BookPublisher实体有多对多的关系 . 我使用hibernate envers 4.3.3 final来审计每个实体 . 通过在每个实体上放置@Aud... -
0 votesanswersviews
Hibernate Envers复合主键relatedId请求
我使用Hibernate Envers进行审计,并且存在复合主键的问题 . 基于相关属性,我有许多具有复合主键的实体 . 该结构如下: @Entity @Audited @Table(indexes = { @Index(columnList = "person_id"), @Index(columnList = "document_id")... -
0 votesanswersviews
Hibernate Envers - 未创建审计表
我在hibernate属性文件中设置如下 hibernate.ddl-auto=update org.hibernate.envers.audit_table_suffix=_AUDITED 在pom.xml中 <dependency> <groupId>org.hibernate</groupId> <a... -
0 votesanswersviews
Hibernate允许对具有加密列的表进行审计
我们已经为我们的一个表实现了Hibernate envers audit(@audited),一切都按预期工作正常 . 但在表中我们使用对称密钥加密逻辑加密某些字段,在我们的实体中,我们已经包含@column传输用于读写操作 . 这里,每当我们首先执行任何CRUD操作时,我们将编写一个本机查询来打开对称密钥,一旦完成CRUD操作,我们将关闭它 . 如果未打开对称密钥,则该值将为null . 在我们... -
5 votesanswersviews
Hibernate - Envers - >属性的审计/版本控制,但仅限于值更改
我有Hibernate的问题 - Envers . 我有一个只有一个审计属性 status 的域对象,它可以是数字0,1,2,3,4,5之一 . @Entity public class Item { ... @Audited private int status; ... other variables, setter/getter, ... } 现在,Env... -
0 votesanswersviews
Hibernate envers无法正常工作
我只是想使用hibernate envers来审计我的实体 . 我使用的是envers-1.2.2.ga-hibernate-3.3.jar,hibernate-annotations-3.5.6-Final.jar,hibernate-core-3.5.2 -Final.jar和hibernate-jpa-2.0-api-1.0.0.Final.jar . 我的实体在下面 User.java @... -
1 votesanswersviews
Hibernate Envers不适用于hibernate-spring-maven项目
我正在尝试使用Envers审核更新/插入到我的表中 . 我正在使用Hibernate 4.1.8.Final和spring 3.0.2.RELEASE,对于envers我的pom.xml看起来像这样 . <dependency> <groupId>org.hibernate</groupId> <artifactId>... -
3 votesanswersviews
如何将Hibernate Envers审计表存储到不同的数据库中?
Hibernate Envers可以将审计表存储到不同的模式或目录中,但是您能告诉我是否可以配置Envers将它们存储到不同的数据库(另一个持久性单元)中? 谢谢你的帮助 . -
7 votesanswersviews
我可以更改以及如何更改Hibernate Envers中的REVTYPE值吗?
我是Hiberante和Envers的新人 . 我在我的应用程序中成功实现了Hibernate Envers并制作了审计表,一切正常,但我想知道是否可以在审计表中更改REVTYPE列中的值 . 现在我的值为0(ADD),1(MOD)和2(DEL) . 我想知道是否可以更改此值,我想将0更改为例如INSERT,1 UPDATE和2 DELETE . 这可能吗?怎么样? 谢谢! -
0 votesanswersviews
Hibernate Envers:“withModifiedFlag”未设置为1,INT列值更改为NULL
我在所有Entity属性上都有 @Audited(withModifiedFlag = true) 注释,需要在Audit表中捕获 . 除了值删除之外,它适用于所有情况 . 含义,如果我的列的值从NULL / INT设置为某个非空值,则相应的 modifiedColumn 值设置为1,但如果该值从任何INT值设置为NULL,则 modifiedColumn 设置为0 (表示未修改) . 我不知道为... -
0 votesanswersviews
为什么Hibernate Envers没有启动更新?
我正在使用Hibernate Envers审核我的表的日志,并使用Spring配置它 . 但是,在执行更新,修改或删除操作时,不会进行审核 . 以下是配置 . spring 配置 <property name="hibernateProperties"> <props> <prop key=&... -
0 votesanswersviews
如何自定义Hibernate EnVers
我们正在设计具有两个特定要求的实体审计库:每个实体一个表和增量日志(JSON diff)不是(完整快照) . 我只知道Hibernate EnVers和JaVers用于实体审核 . (如果有什么别的,请告诉我 . )并且它们都不能满足我们的要求 . 我们已经知道审计记录是什么样的,我们希望在实现库时尽可能多地重用 . 我正在考虑将Hibernate EnVers添加为依赖项并自定义/扩展它以支持... -
7 votesanswersviews
Hibernate Envers 4不是审计实体
我在运行Wildfly 9.0.2的应用程序上使用Hibernate Envers 4.1.0 Spring 3.1.0 . 每当我插入或更新实体时,它都会保持实体的正常,但Envers不会在我的AUD表上保留新的rev . 我正在寻找安静的一段时间寻找答案,但仍然没有找到答案 . 这是我到目前为止尝试的内容: 在 context.xml 上实现手动侦听器 . 后来据我所知,从Envers 4... -
3 votesanswersviews
审计跟踪的Hibernate拦截器或事件?
我记录了一些实体的所有更改的历史记录,并且即将实现类似于Envers的机制来自动处理这个问题 . 我的问题是是否使用Hibernate interceptors or their event system? 看起来拦截器有点简单,我需要的只是它 . Hibernate自己的文档建议使用拦截器来“跟踪审计信息” . 但是他们的审计信息不在每个实体的配套表中,而Envers使用我想象的事件系统是有原... -
1 votesanswersviews
使用Hibernate Envers从实体获取原始值
我已经在我的Springboot项目中配置了Hibernate Envers,现在它正在保存我用@Audited注释的实体中的每个更改但是,我有一个疑问 . 第一次更改完成后,Envers会存储实体的修订版,因此,在一次更改后,我将新值存储在实体表和_AUD表中 . 下一个更改存储在_AUD表中,因此我知道在第一次更新后更改了但原始值(第一次更改之前的值)丢失了 . 我错过了什么吗?有没有办法在更... -
0 votesanswersviews
如何在for循环(Hibernate envers)中进行审计?
我正在使用hibernate envers进行审计 . 它工作正常但今天我意识到如果我在for循环中创建实体它不会 . 在为sql查询设置log true后,我发现,每次迭代后rev-tables都不会更新 . 以某种方式,hibernate收集所有更改并在请求结束时触发审计命令?如何在for-loop中每次迭代后让hibernate进行审计? 我已经尝试过的: for (...) { Obj...