ibatis 对象一对多解决N+1问题
来源:互联网 发布:windows10自带录屏软件 编辑:程序博客网 时间:2024/06/08 07:56
有两张表:student(id,name,num,classes_id)、classes(id,description),一个学生只属于某一个班级,但某一个班下可以有多个学生
classes类中须有List<Student> studentList
对象 简单的set(),get()方法
student_id
sqlMap.xml配置
groupBy="id":表示根据班级的id支装配student,只要有学生班级Id相等的数据都装配到studentList对象中
<resultMap class="classes" id="classesResult" groupBy="id"> 注意不能用select * 代替字段,有可能会出不来,须把字段id写在语句中,尽量property和column中字段相等。这样会少出现问题。
<result property="id" column="id" /> <result property="description" column="description" />
最主要是这段代码,property是班级中studentList对象,column是班级id:用他去装配studentList对象,groupBy是根据传的column去分组装配。resultMap是新定义一个
map放student对象。resultMap="空间名.studentResult",不然可能会找不到这个map错误。
<result property="studentList" column="id" resultMap="空间名.studentResult"/> </resultMap> student对象 <resultMap class="student" id="studentResult">
<result property="id" column="
student_id" /> <result property="name" column="name" /> <result property="num" column="num" /> </resultMap> <select id="getClasses" parameterClass="classes" resultMap="classesResult">
为student中id重命名,以区分字段重名
select c.id,c.description,s.id as student_id,s.name,s.num from classes c join student s on s.classes_id = c.id where id = #id# </select>
以上就是ibatis一对多映射解决方案。参考:http://blog.csdn.net/sanyuesan0000/article/details/21728463
参考:http://blog.csdn.net/Muspelheim/article/details/50485620#comments
阅读全文
0 0
- ibatis 对象一对多解决N+1问题
- 解决Ibatis一对多映射n+1问题
- 解决Ibatis一对多映射n+1问题
- 解决Ibatis一对多映射n+1问题 ----ibatis2.2.0版本
- 解决IBatis中的多对一映射n+1问题
- 解决IBatis中的多对一映射n+1问题
- iBATIS一对多/多对多N+1问题解决方案
- iBATIS一对多/多对多N+1问题解决方案。
- Ibatis/MyBaits 1:N 一对多关系 处理
- iBATIS一对多配置问题
- ibatis N+1问题
- ibatis N+1问题
- 使用hql或条件查询解决一对多关联查询的N+1查询问题
- IBatis学习关于N+1问题的解决
- ibatis 实现一对一和一对多(1)
- ibatis一对多
- ibatis一对多
- ibatis 一对多关联
- 给初学者的RxJava2.0教程(二)
- Linux下/proc目录简介
- oracle 语句与sql server之不同
- 技术文章|机器学习先驱Thomas Dietterich: 如何构建强健的人工智能
- Struts2.5关于<s:action.../>标签找不到Action的问题
- ibatis 对象一对多解决N+1问题
- 内存问题
- 彻底理解js中this的指向
- VC++:创建,调用Win32静态链接库
- 使用 ButterKnife annotation 代替 findViewById()
- 软件安装与维护【Linux-shell】
- 协变数组和类型擦除
- 正则表达式入门--xyphf
- [Python]改变图片的分辨率大小