继承。
entity class映射到一个或多个从表。从表根据主表的主键列(列名为referencedColumnName值的列),建立一个类型一样的主键列,列名由name属性定义。
one2one关系,关系维护端的主键作为外键指向关系被维护端的主键,不再新建一个外键列。
属性说明:
name:列名。
referencedColumnName:该列引用列的列名
columnDefinition:定义建表时创建此列的DDL
下面的代码说明Customer映射到两个表,主表CUSTOMER,从表CUST_DETAIL,从表需要建立主键列CUST_ID,该列和主表的主键列id除了列名不同,其他定义一样。
@Entity
@Table(name="CUSTOMER")
@SecondaryTable(name="CUST_DETAIL",pkJoin=@PrimaryKeyJoinColumn(name="CUST_ID",referencedCo
lumnName="id"))
public class Customer {
@Id(generate = GeneratorType.AUTO)
public Integer getId() {
return id;
}
}
下面的代码说明Employee和EmployeeInfo是一对一关系,Employee的主键列id作为外键指向EmployeeInfo的主键列INFO_ID。
@Table(name = "Employee")
public class Employee {
@OneToOne
@PrimaryKeyJoinColumn(name = "id", referencedColumnName="INFO_ID")
EmployeeInfo info;
}
使用@PrimaryKeyJoinColumn在实体关系中的应用
本文详细解释了在三种情况下使用@PrimaryKeyJoinColumn的原理及应用:实体类映射到从表、一对一关系以及从表根据主表的主键列建立相同类型的主键列。通过具体代码实例,深入探讨了实体类之间的关联与映射。
1300

被折叠的 条评论
为什么被折叠?



