作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
有人问我如何为表中引用表主键的列创建 hibernate 映射。
例如,员工表以 EMP_ID 作为主键,并且还具有 MGR_ID 列来了解员工的经理。由于经理也是员工,因此它会位于同一张表中。因此,每个员工行都有一个经理 ID,它也是一名员工。
请帮助我解决这种情况。谢谢。
最佳答案
您可以在 Employee
类中引用 manager
。
实体看起来像这样:
@Entity
@Table(name="EMPLOYEE")
public class Employee {
@Id
@Column(name="EMPLOYEE_ID")
@GeneratedValue
private Long employeeId;
@Column(name="FIRSTNAME")
private String firstname;
@Column(name="LASTNAME")
private String lastname;
@ManyToOne(cascade={CascadeType.ALL})
@JoinColumn(name="manager_id")
private Employee manager;
@OneToMany(mappedBy="manager")
private Set<Employee> subordinates = new HashSet<>();
public Employee() {
}
public Employee(String firstname, String lastname) {
this.firstname = firstname;
this.lastname = lastname;
}
// Getter and Setter methods
}
请参阅此链接以获取完整示例:
关于hibernate - 如何为自引用表创建 Hibernate 映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29975751/
我是一名优秀的程序员,十分优秀!