У меня есть студенческий класс
@Entity
public class Student {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@Column(name = "first_name")
private String firstName;
@ManyToMany(mappedBy = "students", fetch = FetchType.LAZY, cascade = {CascadeType.MERGE, CascadeType.DETACH, CascadeType.PERSIST, CascadeType.REFRESH})
private List<Course> courses;
public void addCourse(Course theCourse) {
if (courses == null) {
courses = new ArrayList<>();
}
courses.add(theCourse);
theCourse.addStudents(this);
}
}
@Entity
public class Course {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String title;
@ManyToMany(fetch = FetchType.LAZY, cascade = {CascadeType.MERGE, CascadeType.PERSIST, CascadeType.PERSIST, CascadeType.REFRESH})
private List<Student> students;
public void addStudents(Student theStudent) {
if (students == null) {
students = new ArrayList<>();
}
students.add(theStudent);
}
}
//definitely I wrote syntax wrong here because i don't copy and paste from code.
Course c =new Course(//fill constrouctor);
CourseRepositoryy.save(c);
student s = new Student(//fill constrouctor);
s.addCourse(c)
StudentRepository.save(s);
or
student s = new Student(//fill constrouctor);
Course c =new Course(//fill constrouctor);
c.addStudents(s);
save(s);
save(c);
Теперь я хочу создать студента и курс и сохранить их, сохраняя каждую ссылку в таблице соединений. Я не знаю, какой из них сначала, а затем добавить другой к этому. кто-нибудь может помочь мне и иметь ссылку, которая описывает эту топи c?