在我的spring boot应用程序中,我有一个从多个到多个与实体课程相关的用户实体(一个用户可以注册多个课程,一个课程可以有多个用户)
实体课程与实体类一对多相关(一门课程有几个类,但一个类只有一门课程)
我正在用spring boot做我的应用程序,我要说的是,用户已经注册了一门课程,我只需要做:
user.setCourse(course)
userRepository.save(user)
当将课程与用户关联时,我可以说他已注册该课程。但是如何将用户与一个类联系起来,例如知道他完成了哪些类?我可以充分利用这种用户关系,当然是一对多类,还是必须为多个用户与类创建多个关系?
以下是一个实体的小示例,以更好地举例说明这种关系:
@Entity
public class User{
private long id;
private String name;
private String password;
@ManyToMany(mappedBy = âenrolledUserâ, fetch = FetchType.LAZY, cascade = CascadeType.ALL)
@JoinTable
private List enrolledCourse;
//getters and setters
}
@Entity
public class Course{
private long id;
private String name;
private String description;
@ManyToMany(mappedBy = âenrolledCourseâ, fetch = FetchType.LAZY, cascade = CascadeType.ALL)
@JoinTable
private List enrolledUser;
@OnetoMany(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
private List aulas;
//getters and setters
}
@Entity
public class Class{
private long id;
private String name;
private String content;
@ManyToOne(mappedBy = âclassâ, fetch = FetchType.LAZY, cascade = CascadeType.ALL)
@JoinTable
private Course course;
//getters and setters
}