【发布时间】:2014-03-04 15:56:03
【问题描述】:
我有很多映射实体,它们都是从抽象类 BaseEntityImpl 扩展而来的。
在这个类中,我有 1 个属性 company,注释如下:
@ManyToOne(fetch=FetchType.EAGER)
@JoinColumn(name = "id_company", nullable = false)
public Company getCompany() {
return company;
}
仅在其中一个子类中(准确地说是Company),我希望此属性为 NULLEABLE。
但是覆盖setter
@ManyToOne(fetch=FetchType.EAGER)
@JoinColumn(name = "id_company", nullable = true)
@Override
public Company getCompany() {
return company;
}
导致我出现此错误:
原因:org.hibernate.MappingException:在 ar.com.test.entity.Company 中发现公司的重复属性映射
除了不扩展这个类,并在 Company 类中显式定义所有属性/getter/setter 之外,还有什么方法可以实现这一点?
非常感谢!
【问题讨论】:
标签: java hibernate annotations