所以我有个财产课
public class Property {
@Id
@Column(name="PROPERTY_ID")
private Long propertyId;
@Column(name="NAME")
private String name;
@Column(name="TYPE_CODE")
private Integer typeCode;
...getters and setters...
}用于获取提取数据库中所有属性的请求的有限信息。
但是我还想要一个类,它利用DB约束来建立关系。
public class ExportProperty extends Property {
@ManyToOne
@JoinColumn(name="TYPE_CODE")
private ExportPropertyType type;
@OneToMany(mappedBy="property", fetch=FetchType.EAGER)
private Set<ExportPropertyPhoneNumber> phoneNumbers;
...getters and setters...
}用于获取单个属性的所有数据。
这个是可能的吗?还是我需要重新考虑我的策略?
发布于 2016-06-20 17:47:11
多亏了纪尧姆F.我找到了解决办法。
我有一个包含所有公共字段的公共超级类型类。
@MappedSuperclass
public class PropertySuper {
@Id
@Column(name="PROPERTY_ID")
private Long propertyId;
@Column(name="NAME")
private String name;
...getters and setters...
}只有属性表中的数据的类。
@Entity
@Table(name = "PROPERTY")
public class Property extends PropertySuper {
@Column(name="TYPE_CODE")
private Integer typeCode;
...getters and setters...
}和一个拥有所有JPA链接的类
@Entity
@Table(name = "PROPERTY")
public class FullProperty extends PropertySuper {
@ManyToOne
@JoinColumn(name="TYPE_CODE")
private FullPropertyType type;
@OneToMany(mappedBy="property", fetch=FetchType.EAGER)
private Set<FullPropertyPhoneNumber> phoneNumbers;
...getters and setters...
}https://stackoverflow.com/questions/37868795
复制相似问题