<!-- 多对一:配置好多对一映射以后,查询多方可以自动获取一方的信息 -->
<!-- 多对一有两种配置方式:1. 发送连表语句 2. 发送两条查询语句 -->
<!-- 1. 发送两条查询语句 -->
<resultMap type="Subject" id="subjectMap2" autoMapping="true">
<id column="subjectNo" property="subjectNo"/>
<association property="grade" javaType="org.demo02.pojo.Grade" column="grade_id" select="org.demo02.dao.GradeDao.get"></association>
</resultMap>
<select id="get2" parameterType="int" resultMap="subjectMap2">
select * from subject where subjectNo = #{id}
</select>
<!-- 发送连表语句 -->
<resultMap type="Subject" id="subjectMap" autoMapping="true">
<id column="subjectNo" property="subjectNo"/>
<association property="grade" javaType="org.demo02.pojo.Grade" autoMapping="true">
<id column="id" property="id"/>
</association>
</resultMap>
<select id="get" parameterType="int" resultMap="subjectMap">
select * from subject s
inner join grade g on s.grade_id = g.id
where s.subjectNo = #{id}
</select>
<!-- 多对一有两种配置方式:1. 发送连表语句 2. 发送两条查询语句 -->
<!-- 1. 发送两条查询语句 -->
<resultMap type="Subject" id="subjectMap2" autoMapping="true">
<id column="subjectNo" property="subjectNo"/>
<association property="grade" javaType="org.demo02.pojo.Grade" column="grade_id" select="org.demo02.dao.GradeDao.get"></association>
</resultMap>
<select id="get2" parameterType="int" resultMap="subjectMap2">
select * from subject where subjectNo = #{id}
</select>
<!-- 发送连表语句 -->
<resultMap type="Subject" id="subjectMap" autoMapping="true">
<id column="subjectNo" property="subjectNo"/>
<association property="grade" javaType="org.demo02.pojo.Grade" autoMapping="true">
<id column="id" property="id"/>
</association>
</resultMap>
<select id="get" parameterType="int" resultMap="subjectMap">
select * from subject s
inner join grade g on s.grade_id = g.id
where s.subjectNo = #{id}
</select>
<resultMap type="Grade" id="gradeMap" autoMapping="true">
<id column="id" property="id"/>
<!-- 一对多关联映射,推荐发送单独的sql语句 -->
<collection property="subjects" javaType="java.util.List" ofType="Subject" column="id" select="org.demo02.dao.SubjectDao.getByGradeId"></collection>
</resultMap>
<id column="id" property="id"/>
<!-- 一对多关联映射,推荐发送单独的sql语句 -->
<collection property="subjects" javaType="java.util.List" ofType="Subject" column="id" select="org.demo02.dao.SubjectDao.getByGradeId"></collection>
</resultMap>
<select id="get" parameterType="int" resultMap="gradeMap">
select * from grade where id = #{id}
</select>
select * from grade where id = #{id}
</select>