如何映射一对多的JPA关系?

时间:2016-03-31 04:40:54

标签: jpa

我正在使用以下映射获取Unknown column 'imageprope1_.enid' in 'field list'

@OneToMany(fetch=FetchType.EAGER, cascade = CascadeType.ALL)
@JoinColumn(name="enid", referencedColumnName="pnid")
private List<EntityImageProperty> imageProperties = new ArrayList<>();

这是关键实体映射:

BaseEntityProperty

@Entity
@Inheritance(strategy=InheritanceType.JOINED)
@DiscriminatorColumn(name="enpptpcd",   discriminatorType=DiscriminatorType.STRING)
@Table(name=BaseEntityProperty.TABLE_NAME)
public abstract class BaseEntityProperty implements Serializable {
    @Id
    @Column(name="enppid")
    private String entityPropertyId=null;

    @Column(name="enid")
    private String entityId=null;

EntityImageProperty

@Entity
@Inheritance(strategy=InheritanceType.JOINED)
@DiscriminatorValue(EntityImageProperty.DISCRIMINATOR_VALUE)
@Table(name=EntityImageProperty.TABLE_NAME)
@PrimaryKeyJoinColumn(name="enppid")
public class EntityImageProperty extends BaseEntityProperty {

看起来@JoinColumn(name="enid", referencedColumnName="pnid")告诉Hibernate加入EntityImageProperty.enid,而它应该加入BaseEntityProperty.enid

0 个答案:

没有答案