一对一:<association></association>

一对多:<collection></collection>

ClassMapper.xml:

<resultMap type="com.taobaoo.school.domain.edu.XjClass" id="classMap">
<id property="id" column="class_id"/>
<result property="className" column="class_name"/>
<association property="school" javaType="com.taobaoo.school.domain.edu.School">
<id property="id" column="school_id"/>
<result property="schoolName" column="school_name"/>
</association>
<association property="grade" javaType="com.taobaoo.school.domain.edu.Grade">
<id property="id" column="grade_id"/>
<result property="gradeName" column="grade_name"/>
</association>
<association property="classTea" javaType="com.taobaoo.school.domain.edu.Teacher">
<id property="id" column="class_teacher_id"/>
<result property="name" column="class_teacher_name"/>
</association>
<collection property="teaList" ofType="com.taobaoo.school.domain.edu.Teacher">
<id property="id" column="sub_teacher_id"/>
<result property="name" column="sub_teacher_name"/>
<result property="subjectName" column="sub_name"/>
</collection>
</resultMap>

<select id="queryClass" resultMap="classMap">
select
cls.id AS class_id,
cls.class_name AS class_name,
school.id AS school_id,
school.school_name AS school_name,
grade.id AS grade_id,
grade.grade_name AS grade_name,
teacher.id AS class_teacher_id,
teacher.name AS class_teacher_name
from class cls
join grade on cls.grade_id=grade.id
join school on cls.school_id=school.id
join teacher on cls.teacher_id=teacher.id
</select>

Class.java:

private Long id;

private Grade grade; //1对1

private Teacher teacher;  //1对1

Private List<Teacher> teaList; //1对多

//get/set省略...

mybatis一对一和一对多实例的更多相关文章

  1. mybatis 一对一与一对多collection和association的使用

    在mybatis如何进行一对一.一对多的多表查询呢?这里用一个简单的例子说明. 一.一对一 1.association association通常用来映射一对一的关系,例如,有个类user,对应的实体 ...

  2. mybatis一对一 和 一对多 嵌套查询

    实际项目中的,接口对外VO  会出现 一对一 和 一对多的情况,举例:小区 下面有 楼栋  ,楼栋 下面有 房屋    ,   房屋里面又房间 小区Vo  : districtVo { id: nam ...

  3. Mybatis一对一,一对多

    一对一 假如有student表(学生表)和student_card表(学生证表). student表中有一个字段self_card用来查student_card,student_card表中有一个st ...

  4. Mybatis 一对一、一对多、多对多

    一对一返回resultType <!-- 查询订单关联查询用户信息 resultType --> <select id="findOrderCustom" res ...

  5. 【转】mybatis 一对一与一对多collection和association的使用

    转自:https://www.cnblogs.com/yansum/p/5819973.html (有修改和补充,红色字体部分)   在mybatis如何进行一对一.一对多的多表查询呢?这里用一个简单 ...

  6. Mybatis一对一、一对多、多对多查询。+MYSQL

    场景:使用三张数据表:student学生表.teacher教师表.position职位表 一个学生可以有多为老师.一位老师可以有多个学生.但是一个老师只能有一个职位:教授.副教授.讲师:但是一个职位可 ...

  7. Mybatis 一对一、一对多、多对多关联之级联添加

    示例项目:MIPO_CRM 一.一对一关联 示例:订单与销售机会 描述:在业务员与客户的联系人的联系记录中可以生成一条销售机会,而此条销售机会可生成一条订单,两者呈一对一关联. 1.表设计 oppor ...

  8. Mybatis 一对一,一对多,多对一,多对多的理解

    First (一对一) 首先我来说下一对一的理解,就是一个班主任只属于一个班级,一个班级也只能有一个班主任.好吧这就是对于一对一的理解 怎么来实现呢? 这里我介绍了两种方式: 一种是:使用嵌套结果映射 ...

  9. Mybatis一对一和一对多配置

    作者:夕下奕林 问题描述 现在有三张数据表,表名为orders,orderdetail,items,分别表示订单,订单详情,商品. 其中一个订单包含多个订单详情,表示订单中的不同个具体的商品,订单详情 ...

随机推荐

  1. Git如何获得两个版本间所有变更的文件列表

    https://segmentfault.com/q/1010000000133613 git diff --name-status HEAD~2 HEAD~3

  2. Java多线程之锁优化策略

    转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6561264.html  锁的优化策略 编码过程中可采取的锁优化的思路有以下几种: 1:减少锁持有时间 例如:对 ...

  3. Java多线程之ReadWriteLock读写锁简介与使用教程

    转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6558073.html  普通的锁在对某一内容加锁后,其他线程是不能访问的.但是我们要考虑这种情况:如果当前加锁 ...

  4. Linux使用笔记

    1:Ubuntu系统获取超级权限: 在终端输入:sudo passwd,重置uinx密码.然后输入 su ,输入密码,即可进入root权限. 2:更改文件属性 Linux文件的基本权限有九个,分别是o ...

  5. Android开发经典笔试面试题汇总(持续更新中)

    1.我们都知道Handler是线程与Activity通信的桥梁,假设线程处理不当.你的机器就会变得非常慢,那么线程销毁的方法是:(A) A. onDestroy() B. onClear() C. o ...

  6. java 从spring容器中获取注入的bean对象

      java 从spring容器中获取注入的bean对象 CreateTime--2018年6月1日10点22分 Author:Marydon 1.使用场景 控制层调用业务层时,控制层需要拿到业务层在 ...

  7. 查询后n条记录

    查询后n条记录 SELECT * FROM tb_stu ORDER BY id ASC LIMIT n

  8. 微信扫码支付springboot版本

    发布时间:2018-11-06   技术:springboot+freemarker   概述 该项目是一个采用springboot构建的web项目,主要实现了微信扫码支付功能.包含最基本的创建订单, ...

  9. springboot+mybatis+maven角色权限框架

    发布时间:2018-10-24   技术:springboot,mybatis,maven,shiro   概述 Springboot作为基础框架,使用mybatis作为持久层框架 使用官方推荐的th ...

  10. Windows下的包管理器Chocolatey的使用

    1.配置安装路径(后续需要管理员权限执行命令) Create a machine level (user level will also work) environment variable name ...