【问题标题】:use of hibernate envers with inheritance使用带有继承的休眠环境
【发布时间】:2014-10-16 07:07:57
【问题描述】:

请建议我如何使用每个子类的继承类型表进行审计,因为我找不到任何文档。我已经在我的代码上尝试过,但它不能正常工作。如果我将父表设为“@Audited”,那么必须自动审核我的派生类,因为它们应该继承父类的行为。我的代码如下

@Entity  
@Table(name = "employee105")
@Inheritance(strategy=InheritanceType.JOINED)   
@Audited
public class Employee {   
@Id  
@GeneratedValue(strategy=GenerationType.AUTO)         
@Column(name = "id")
private int id;   

@Column(name = "name")
private String name;
// getter setter

}

@Entity  
@Table(name="contractemployee105")
@PrimaryKeyJoinColumn(name="ID") 
@Audited
public class OldEmployee extends Employee{   

    @Column(name="pay_per_hour")
    private Long pay_per_hour;          

    @Column(name="contract_duration")
    private String contract_duration;
  // getter and setter
 }

@Entity  
@Table(name="regularemployee105")
@PrimaryKeyJoinColumn(name="ID")
@Audited
public class NewEmployee extends Employee{   

@Column(name="salary")
private Long salary;   

@Column(name="bonus")
private Integer bonus;
// getter and setter
}

在上面的代码中,所有的表都被生成,即所有 3 个实体表、3 个审计表和一个 REVINFO 表,但没有数据被插入其中。如果我遗漏了什么,请告诉我。提前致谢

【问题讨论】:

    标签: hibernate hibernate-envers


    【解决方案1】:

    我刚刚得到了解决方法,因此将我的 hibernate 从 3.5 升级到了 4.2,现在一切正常。我认为hibernate envers 3.5中存在一些错误,并且在以后的版本中得到了解决。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-09-15
      • 1970-01-01
      • 2016-10-04
      • 1970-01-01
      • 1970-01-01
      • 2011-03-30
      • 2023-03-14
      • 1970-01-01
      相关资源
      最近更新 更多