[英]How to use Spring Data JPA Repository to query from 2 tables?
我有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 +(String teacherId);
这将为您提供属于该教师的学生列表
关于@ prateek-singh的实体,也应该可以简单地通过外部实体来定义没有id的查询。
List<Student> findByTeacher(Teacher teacher);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.