mybatis:级联(一对多)

以下知识来源说明:http://www.java1234.com/

MyBatis中使用collection标签来解决一对多的关联查询,ofType属性指定集合中元素的对象类型。

entity:Grade

public class Grade {

	private Integer id;
	private String gradeName;
	private List<Student> students;

        Getter and Setter ……

        toString……
}

entity:Student

public class Student {

	private Integer id;
	private String name;
	private Integer age;
	private Address address;

        Getter and Setter ……

        toString……
}

mapping:

GradeMapper.xml

<resultMap type="Grade" id="GradeResult">
    <result property="id" column="id"/>
    <result property="gradeName" column="gradeName"/>
    <collection property="students" column="id" select="com.java1234.mappers.StudentMapper.findByGradeId"></collection>
</resultMap>

<select id="findById" parameterType="Integer" resultMap="GradeResult">
    select * from t_grade where id=#{id}
</select>

StudentMapper.xml

<resultMap type="Student" id="StudentResult">
    <id property="id" column="id"/>
    <result property="name" column="name"/>
    <result property="age" column="age"/>
</resultMap>

<select id="findByGradeId" resultMap="StudentResult" parameterType="Integer">
    select * from t_student where gradeId=#{gradeId}
</select>

猜你喜欢

转载自blog.csdn.net/m0_38084243/article/details/82379203