在Hibernate Envers中为修订实体创建审计记录的方式是定义一个带有修订实体作为持久化实体的修订审计类,并使用@RevisionEntity注释此类。然后,使用@RevisionNumber和@RevisionTimestamp注释修订实体类中的属性,以存储修订号和时间戳。最后,在hibernate.cfg.xml文件中启用Envers。
示例代码:
@MappedSuperclass public abstract class CustomRevisionEntity implements RevisionListener {
@Id
@GeneratedValue
@RevisionNumber
private int id;
@RevisionTimestamp
private long timestamp;
//getters and setters
}
@Entity @RevisionEntity(CustomRevisionEntity.class) public class AuditRevisionEntity {
@Column(name = "CUSTOM_FIELD")
private String customField;
// getter and setter for customField
// override if you need
public void setCustomField(Object customField) {
this.customField = customField.toString();
}
}
//in your hibernate config
下一篇:保存在画布上绘制的图像