【问题标题】:Model Look up table for a JPA Entity FieldJPA 实体字段的模型查找表
【发布时间】:2017-08-22 23:46:53
【问题描述】:

我正在尝试找出要使用的适当关系,以便对需要查找表(UI 上的 Comboxbox 等效项)来从中选择值的 JPA 实体字段进行建模。下面是一个例子:

@Entity
public class Employee {

    @Id
    private int employeeId;
    private String name;
    private Department department;
}

@Entity
public class Department  {

    @Id
    private int id;
    private String name;
}

Department 的实例可能如下:

Id    | Name
-----------------------
100   | Human Resources
101   | Sales
102   | Finances

对于员工,部门字段应从上述之一中获取值。两个实体中对应字段的 JPA 注释应该是什么?

谢谢,

桑迪普·约瑟夫

【问题讨论】:

  • 我敢肯定,如果您真的阅读过 JPA,并搜索了 OneToOne 关系,您可能会找到一些东西

标签: jpa associations entity lookup relationships


【解决方案1】:

我认为您正在寻找从EmployeeDepartment 的单向ManyToOne 关系,如下所示:

@Entity
public class Employee {

    @Id
    private int employeeId;
    private String name;

    @ManyToOne
    @JoinColumn(name = "department_id", nullable = false)
    private Department department;
}

这意味着一个员工必须关联到一个部门,而一个部门可以关联到多个员工。

如果您需要了解与部门关联的员工列表,则可以通过添加以下内容来建立双向关系:

@Entity
public class Department  {

    @Id
    private int id;
    private String name;

    @OneToMany(mappedBy = "department")
    private Collection<Employee> employees; 
}

【讨论】:

  • 谢谢 dic19,我想这就是我想要的解决方案。
猜你喜欢
  • 1970-01-01
  • 2013-11-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多