我有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/

10-12 02:06