【发布时间】:2016-02-17 16:13:51
【问题描述】:
鉴于Oracle Database HR sample schema 中的COUNTRIES 和REGIONS 表:
COUNTRIES(country_id, country_name, region_id)
REGIONS(region_id, region_name)
还有这个Country实体类:
import javax.persistence.*;
@Entity
@Table(name = "COUNTRIES")
public class Country {
@Id
@Column(name = "COUNTRY_ID")
private String id;
@Column(name = "COUNTRY_NAME")
private String name;
}
我想在一个Country 实体类中映射两个表,也就是说,不创建单独的Region 实体类。
而不是这种多对一的关系:
@ManyToOne
@JoinColumn(name = "REGION_ID")
private Region region;
我想要一个简单的String regionName 属性映射到REGIONS.REGION_NAME,使用REGIONS.REGION_ID = COUNTRIES.REGION_ID 作为连接条件。
JPA 2.0 是否支持这种映射?我应该使用哪些注释?
【问题讨论】:
-
您的意思是您想要 Region 的 SecondaryTable?为什么不阅读辅助表的 JPA 文档?互联网搜索发现很多
-
我认为你不能将@SecondaryTable 与非 PK 连接一起使用,这就是你在这里所拥有的。
标签: java jpa orm jpa-2.0 many-to-one