`
frank1998819
  • 浏览: 732631 次
  • 性别: Icon_minigender_1
  • 来自: 南京
文章分类
社区版块
存档分类

mybatis 一对一 一对多 (转)

 
阅读更多
mybatis 一对一 一对多




一对一的XML配置文件

<mapper namespace="dao.mapper.ClassMapper">

<resultMap id="classResultMap" type="Classes">
  <id property="classid" column="classid1" />
  <result property="classname" column="classname" />
  <result property="teacherid" column="teacherid2" />
  <association property="teacher" column="teacherid" javaType="Teacher" select="getTeacher" />
<!--   <association property="teacher" column="teacherid" javaType="Teacher" select="dao.mapper.TeacherMapper.getTeacher" />  两个XML文件之间调用 -->
</resultMap>

<select id="selectAllByClassId" parameterType="int" resultMap="classResultMap">
  select * from class c where c.classid = #{classid};
</select>

<select id="getTeacher" parameterType="int" resultType="teacher">
  select * from teacher tt where tt.teacherid = #{teacherid2}
</select>


</mapper>







一对多 两个配置文件之间调用

一对多中的"一"
<mapper namespace="dao.mapper.ClassMapper">

<resultMap id="classResultMap" type="Classes">
  <id property="classid" column="classid1" />
  <result property="classname" column="classname" />
  <result property="teacherid" column="teacherid2" />
  <collection property="studentList" column="classid" javaType="ArrayList" ofType="Student" select="StudentDao.getStudentByClassID" />
</resultMap>

<select id="selectAllByClassId" parameterType="int" resultMap="classResultMap">
  select * from class c where c.classid = #{classid};
</select>
</mapper>


一对多中的"多"

<mapper namespace="StudentDao">

<resultMap type="Student" id="studentResultMap">
  <id property="studentid" column="studentid" />
  <result property="studentname" column="studentname" />
</resultMap>

<!-- 查询学生list,根据班级id -->
<select id="getStudentByClassID" parameterType="String" resultMap="studentResultMap">
  select *from student st WHERE st.classid = #{classid1}
</select>
</mapper>
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics