一对一、一对多的关联查询 ?

<mapper namespace="com.lcb.mapping.userMapper">

<!--association 一对一关联查询 -->

43 页 共 485 页<select id="getClass" parameterType="int"

resultMap="ClassesResultMap">

select * from class c,teacher t where c.teacher_id=t.t_id and

c.c_id=#{id}

</select>

<resultMap type="com.lcb.user.Classes" id="ClassesResultMap">

<!-- 实体类的字段名和数据表的字段名映射 -->

<id property="id" column="c_id"/>

<result property="name" column="c_name"/>

扫描二维码关注公众号,回复: 10730186 查看本文章

<association property="teacher"

javaType="com.lcb.user.Teacher">

<id property="id" column="t_id"/>

<result property="name" column="t_name"/>

</association>

</resultMap>

<!--collection 一对多关联查询 -->

<select id="getClass2" parameterType="int"

resultMap="ClassesResultMap2">

select * from class c,teacher t,student s where c.teacher_id=t.t_id

and c.c_id=s.class_id and c.c_id=#{id}

</select>

<resultMap type="com.lcb.user.Classes" id="ClassesResultMap2">

<id property="id" column="c_id"/>

<result property="name" column="c_name"/>

<association property="teacher"

javaType="com.lcb.user.Teacher">

<id property="id" column="t_id"/>

<result property="name" column="t_name"/>

</association>

<collection property="student"

ofType="com.lcb.user.Student">

<id property="id" column="s_id"/>

<result property="name" column="s_name"/>

</collection>

</resultMap>

</mapper>

猜你喜欢

转载自www.cnblogs.com/programb/p/12687030.html