一、one to one,从表主键引用主表主键
主表实体:
@Entity
@Table(name="EMPLOYEE")
public class Employee {
@Id
@GeneratedValue
@Column(name="employee_id")
private Long employeeId;
@Column(name="name")
private String name;
@OneToOne(mappedBy="employee", cascade=CascadeType.ALL)
private EmployeeDetail employeeDetail;
public Employee() {
}
// Getter and Setter methods
}从表实体:@Entity
@Table(name="EMPLOYEEDETAIL")
public class EmployeeDetail {
@Id
@Column(name="employee_id", unique=true, nullable=false)
@GeneratedValue(generator="gen")
@GenericGenerator(name="gen", strategy="foreign", parameters=@Parameter(name="property", value="employee"))
private Long employeeId;
@Column(name="street")
private String street;
@OneToOne
@PrimaryKeyJoinColumn
private Employee employee;
public EmployeeDetail() {
}
// Getter and Setter methods
}注意:设定mappedBy的那一方不进行主表到从表关系的维护,即对employee的更改,不会影响到employeedetail。
一对一关联关系详解:实体类设计与应用
8510

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



