我有2个表,分别是“学生”和“老师”,并说“学生”与“老师”具有多对一关系,并说“teacherId”用作外键。
如果要查询以下内容,如何使用spring数据JPA repo 方法-findByTeacherName
,
select * from Student S, Teacher T
where T.teacherName = 'SACHIN' and S.teacherId = T.teacherId
注意:这里我只想使用
StudentRepository
进行查询,这是使用StudentHibernateMapping
类创建的,该类与TeacherHibernateMapping
类有关系任何帮助将不胜感激。
最佳答案
StudentRepository上将有一个存储库方法
List<Student> findByTeacher_TeacherId(String teacherId);
您的entityClass应该像..
@Entity
Class Student {
@Id
String studentId;
@ManyToOne
private Teacher teacher;
}
和老师上课
@Entity
Class Teacher {
@Id
private String teacherId;
}
这里您需要知道的关键是:
findBy +(学生类的外键成员,首字母为Upper )+下划线+教师类的数据成员,首字母为UpperCase +(字符串TeacherId);
这会给你一个属于那个老师的学生名单
关于java - 如何使用Spring Data JPA Repository从2个表查询?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26938048/