myBatis学习笔记(5)——一对多关联表查询
来源:互联网 发布:乐视电视mac地址 编辑:程序博客网 时间:2024/05/17 03:18
需求
上一篇笔记是一对一,一个学生对应一个老师,本次我们修改一下需求,一个老师有多个学生
参考:myBatis学习笔记(4)——一对一关联表查询
老师类:
package com.bank.entities;import java.util.List;public class Teacher { private int teacherId; private String teacherName; private List<Student> stuList; public List<Student> getStuList() { return stuList; } public void setStuList(List<Student> stuList) { this.stuList = stuList; } public int getTeacherId() { return teacherId; } public void setTeacherId(int teacherId) { this.teacherId = teacherId; } public String getTeacherName() { return teacherName; } public void setTeacherName(String teacherName) { this.teacherName = teacherName; } @Override public String toString() { return "Teacher [teacherId=" + teacherId + ", teacherName=" + teacherName + ", stuList=" + stuList + "]"; }}
方法一
与上一个笔记,有两种方法,套路都是一样的,直接看代码,不多解释
<!-- 方法一 --> <resultMap type="Teacher" id="teacherResultMap1"> <id property="teacherId" column="teacher_id" /> <result property="teacherName" column="teacher_name" /> <!-- collection 是用来处理一对多关系的结果映射 --> <collection property="stuList" ofType="Student"> <id property="stuId" column="stu_id" /> <result property="stuName" column="stu_name" /> </collection> </resultMap> <select id="getTeacher" parameterType="int" resultMap="teacherResultMap1"> select * from student s,teacher t where s.teacher_id = t.teacher_id and t.teacher_id = #{id} </select>
跟一对一不同的主要是用了
collection
标签,ofType
属性表示该集合内元素的类型
方法二
<!-- 方法二 --> <select id="getTeacher2" parameterType="int" resultMap="teacherResultMap2"> select teacher_id teacherId,teacher_name teacherName from teacher where teacher_id=#{id} </select> <select id="getStudents" parameterType="int" resultType="Student"> select stu_id stuId,stu_name stuName,teacher_id teacherId from student where teacher_id=#{id} </select> <resultMap type="Teacher" id="teacherResultMap2"> <id property="teacherId" column="teacher_id" /> <result property="teacherName" column="teacher_name" /> <!-- association是用来处理一对多关系的结果映射 --> <collection property="stuList" column="teacherId" select="getStudents"> </collection> </resultMap>
0 0
- myBatis学习笔记(5)——一对多关联表查询
- mybatis学习笔记(十)一对多关联表查询
- MyBatis学习笔记:一对一和一对多关联表查询
- Mybatis学习笔记-关联表查询的问题 (一对多关联)
- Mybatis实现关联表查询(一对多关联)
- MyBatis学习--关联表查询--一对一一对多
- Mybatis学习笔记-一对多关联
- mybatis学习笔记(五) --- 一对多关联
- MyBatis-一对多关联表查询 -06
- Mybatis一对多关联表查询
- MyBatis一对多双向关联——MyBatis学习笔记之七
- Mybatis一对多关联查询
- mybatis一对多关联查询
- Mybatis一对多关联查询
- mybatis一对多关联查询
- 【Mybatis学习总结五】实现关联表查询----一对多关联(collection)
- mybatis学习笔记(11)-一对多查询
- Mybatis学习笔记(十二)【一对多查询】
- 进程和线程的区别
- 原局凶存,大运流年体现,早亡命例。
- WebRTC的问题
- hdu3047 Zjnu Stadium
- Python进阶(二)——Python对象类型
- myBatis学习笔记(5)——一对多关联表查询
- LeetCode 6 - ZigZag Conversion
- MSRCR(Multi-Scale Retinex with Color Restore)
- vm10.0.3安装Ghost win8
- Intl Extension missing on Xampp
- webview与js交互
- 欢迎使用CSDN-markdown编辑器
- 一起talk Vim吧(第十四回:Vim插件之配置文件)
- linux应用开发-I/O2