Hibernate使用注解设定关联关系
Hibernate使用注解设定关联关系
一、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。
评论暂时关闭