手动将审核条目添加到Hibernate Envers

时间:2018-03-01 15:23:49

标签: java hibernate-envers

我正在使用Hibernate Envers注释审核Java对象,但使用Pentaho(ETL)直接在数据库中创建初始对象。

我想使用ETL创建对象,并将表条目添加到Envers生成的object_AUD和REVINFO表中。

我一直在尝试从REVINFO表中找到REV列的生成策略,但我必须在错误的位置查找。有人会帮我找到有效的生成策略,这样我就可以手动将记录插入到审计表中,而不会在未来造成可能的冲突或奇怪的行为吗?

1 个答案:

答案 0 :(得分:0)

您所寻求的将取决于您是否正在配置您的应用程序以采用org.hibernate.envers.use_revision_entity_with_native_id的默认值。

默认值(true)告诉Envers要求Hibernate使用基于本机的主键创建REVINFO表,该主键取决于IDENTITYSEQUENCE在您的数据库平台上。如果查看数据库中REVINFO的表定义,您应该能够推断出这些信息。

如果使用false配置此属性,Envers将构建自己的序列元数据并将其提供给Hibernate。该序列称为REVISION_NUMBER,存储在名为REVISION_GENERATOR的表中。序列初始化为1,默认值增加1。

相关问题