6.4.4. Envers 配置属性


Expand
表 6.1. 实体数据版本配置参数
属性名称默认值描述

org.hibernate.envers.audit_table_prefix

 

在被审计实体名称前加上字符串,以创建保存审计信息的实体的名称。

org.hibernate.envers.audit_table_suffix

_AUD

附加到已审计实体名称的字符串,以创建保存审计信息的实体的名称。例如,如果对表名称为 Person 的实体进行了审计,Envers 将生成名为 Person_AUD 的表来存储历史数据。

org.hibernate.envers.revision_field_name

REV

包含修订号的审计实体中的字段名称。

org.hibernate.envers.revision_type_field_name

REVTYPE

存放修订类型的审计实体中的字段名称。当前可能的修订类型有: 添加、修改 传送 以分别插入、修改或删除。

org.hibernate.envers.revision_on_collection_change

true

此属性决定是否应生成修订项,如果关系字段未拥有的更改。这可以是一对多关系中的集合,也可以是使用一对一关系中的 mapping By 属性的字段。

org.hibernate.envers.do_not_audit_optimistic_locking_field

true

为 true 时,用于开放式锁定的属性(使用 @Version标注)将自动从审计中排除。

org.hibernate.envers.store_data_at_delete

false

此属性定义在删除实体时是否应将实体数据存储在修订中,所有其他属性均标记为 null(而非 ID)。这通常不需要,因为数据存在于最后一处的修订版本中。但有时候,在最后一个修订版本中访问它更为简单和高效。但是,这意味着在删除前包含的数据被存储两次。

org.hibernate.envers.default_schema

Null(与普通表相同)

用于审计表的默认架构名称。可以使用 @AuditTable(schema="…​") 注释覆盖。如果不存在,则架构将与普通表的架构相同。

org.hibernate.envers.default_catalog

Null(与普通表相同)

应用于审计表的默认目录名称。可以使用 @AuditTable(catalog="…​") 注释覆盖。如果没有,目录将与普通表的目录相同。

org.hibernate.envers.audit_strategy

org.hibernate.envers.strategy.DefaultAuditStrategy

此属性定义在持久保留审计数据时应使用的审计策略。默认情况下,仅存储了实体修改的修订版本。另外,org.hibernate.envers.strategy.ValidityAuditStrategy 存储 start 修订版本和结尾修订版本。它们一起定义审计行何时有效。

org.hibernate.envers.audit_strategy_validity_end_rev_field_name

REVEND

在审计实体中保存最终修订版本的列名称。只有使用了有效期审计策略时,此属性才有效。

org.hibernate.envers.audit_strategy_validity_store_revend_timestamp

false

此属性定义除结束修订本身外,是否应将最终修订的时间戳(数据在最后有效的位置)存储下来。这对于使用表分区从关系数据库中清除旧的审计记录非常有用。分区需要表中存在的列。只有在使用了Validity AuditStrategy 时才会评估此属性。

org.hibernate.envers.audit_strategy_validity_revend_timestamp_field_name

REVEND_TSTMP

结束修订版本时间戳的列名称,即数据仍有效。只有在使用了Validity AuditStrategy 时才使用,org.hibernate.envers.audit_strategy_validity_store_revend_timestamp 评估为 true。

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2026 Red Hat
返回顶部