Mybatis 返回List嵌套

版权声明:LT https://blog.csdn.net/LitongZero/article/details/86304417

Mybatis 返回List嵌套

应用场景:

例如:
1.返回班级列表,每个班级中又包含学生列表。
2.树形下拉框

1、实体类

public class Student {
    private int studentId;
    private String name;
    private String sex;
    private String number;
}

public class Grade {
	private int gradeId;
    private String gradeName;
    private String gradeNumber;
    private List<Student> studentList;
}

2、Mapper

<resultMap id="gradeAndStudentList" type="com.lt.pojo.Grade">
	<id column="id" property="gradeId"/>
	<result column="grade_name" property="gradeName"/>
	<result column="grade_number" property="gradeNumber"/>
	<collection property="studentList" ofType="com.lt.pojo.Student">
		<id column="id" property="studentId"/>
		<result column="name" property="name"/>
		<result column="sex" property="sex"/>
		<result column="number" property="number"/>
	</collection>
</resultMap>

<select id="queryGradeAndStudentList" resultMap="gradeAndStudentList">
	SELECT
		g.id AS gradeId,
		g.grade_name,
		g.grade_number,
		s.id AS studentId,
		s.name ,
		s.sex ,
		s.number
	FROM grade g
	LEFT JOIN student s ON g.id = s.grade_id
	GROUP BY g.id
</select>

3、返回类型

方法用List<Grade>接收返回结果

例如:

public List<Grade> queryGradeAndStudentList(StudentReq req)

猜你喜欢

转载自blog.csdn.net/LitongZero/article/details/86304417