我有很多映射实体,所有这些实体都来自抽象类BaseEntityImpl
。
在本课程中,我有1个属性公司,注释如下:
@ManyToOne(fetch=FetchType.EAGER)
@JoinColumn(name = "id_company", nullable = false)
public Company getCompany() {
return company;
}
只有一个子类(确切地说Company
),我希望这个属性是NULLEABLE。
但是重写了二传手
@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来实现这个目标?
非常感谢你!
答案 0 :(得分:0)
您是否尝试过查看@AssociationOverride?
@Entity
@AssociationOverride(name="company",
joinColumns=@JoinColumn(name="id_company", nullable=true))
public class Company extends BaseEntityImpl {
....
}