在 Mybatis下实现嵌套查询
比如有学生和老师两张表,我们想根据学生表关联的 tid 来查询对应的老师
学生表:
老师表:
- 查询所有学生信息
- 根据查出来的学生的tid寻找对应的老师
两张表的实体类
//导入了lombok就不用自己写实体类的方法了,如果不知道详情可自行百度lombok
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Student {
private int id;
private String name;
private Teacher teacher;
}
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Teacher {
private int id;
private String name;
}
对应的Mapper.xml内容就不全写了,学到这了应该都会写Mapper的结构了,只表述下关键的吧
<!-- 查询学生对应的select-->
<select id="getStudents" resultType="Student">
select * from students;
</select>
<!-- 根据学生tid查询老师 对应的select-->
<select id="getTeacher" resultType="Teacher">
select * from teachers where id= #{id};
</select>
单独用查学生的能查出来吗?来试试
@Test
public void test(