假设有一个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
我在休眠方面不是那么先进,有人可以帮忙。
假设有一个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
我在休眠方面不是那么先进,有人可以帮忙。
我即将向您展示的方法是一对多单向方法。在您的数据库中,您应该为课程创建一个表,它必须包含作为外键的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 使用它们来使用从数据库中检索到的值来设置实体中的字段