В настоящее время я изучаю Spring boot, hibernate и Spring Boot JPA
Я разрабатываю классное приложение для коучинговых центров и институтов.
В нем студенты записались на несколько курсов в одном институте
Класс Student Entity:
@Entity
@Table(name = "student")
public class Student {
private String name;
private String dob;
private String gender;
private String address;
private String email;
private Integer mobile;
private String joined;
private Integer instID;
@Id
private String studentid;
getters and setters()....
}
Course Table Entity class
@Entity
@Table(name = "courses")
public class Course {
private String name;
private String description;
private String logo;
private String start;
private String end;
private Integer fee;
@Id
private String courseid;
private Integer instID;
getters and setters();
}
Таблица зарегистрированных классов Entity class
public class EnrolledCourses {
@Id
String enrollID;
String courseid;
String studentid;
Date joined;
getters and setters()...
}
Репозиторий JPA
@Repository
public interface StudentRepository extends CrudRepository<Student, String> {
Student findTopByInstIDOrderByStudentidDesc(int instID);
}
@Repository
public interface CourseRepository extends CrudRepository<Course,String> {
}
@Repository
public interface EnrolledRepository extends CrudRepository<Course,String> {
}
Моя потребность
Теперь я получаю зачисленных студентов на заданный курс в данном институте ... с помощью этого MySQL запрос
SELECT
`enrolled_courses.enrollID`,
`student.name`, `student.studentid`
FROM `enrolled_courses`
INNER JOIN `student`
WHERE
`enrolled_courses.studentid` = `student.studentid`
AND
`student.instID` = 13
AND
`enrolled_courses.courseid` = '13I01C' ;
Теперь мне нужно реализовать этот запрос внутреннего соединения в CourseRepository (или в репозитории enrolledstudent)
Как этого добиться?
Пожалуйста, наставьте меня