0

假设有一个Employee's 有一个集合Course

class Employee {
@OneToMany
private Set<Course> courses.
}

我想要类似下面的东西

first_name | last_name | course_ids
Jill       |  Smith.   | 1,2,3
Eve        |  Jackson. | 1,4,5

我在休眠方面不是那么先进,有人可以帮忙。

4

1 回答 1

0

我即将向您展示的方法是一对多单向方法。在您的数据库中,您应该为课程创建一个表,它必须包含作为外键的employee_id 和作为主键的课程ID。然后,创建 Course 类,如下所示。(假设数据库中 course 表的名称为“course”:

@Entity
@Table(name = "course")
public class Course {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name ='id')
    private int id;
    
    //You can add another fields based on your course table
   //add a constructor with no arguments, getters and setters
}

请注意,employee_id 不在课程类中。然后创建员工类:

@Entity
@Table(name ="employee")
public class Employee {
    //ID and other fields
    @OneToMany
    @JoinColumn(name="course_id")
    private List<Course> courses;
    
    //Constructor,getters and setters,...

}

您必须在您创建的每个实体中定义 getter 和 setter,因为 Hibernate 使用它们来使用从数据库中检索到的值来设置实体中的字段

于 2020-07-23T09:29:39.630 回答