MyBatis关联映射:一对一一对多总结一二

Posted Java后端技术

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MyBatis关联映射:一对一一对多总结一二相关的知识,希望对你有一定的参考价值。

一、一对一

场景:生活中每一个人都有一个身份证,这是最简单的一对一的关系。

(1)用户表

(2)身份证表

MyBatis关联映射:一对一、一对多总结一二

(3)用户实体对象,com.xuliugen.mybatis.demo.bean.User

MyBatis关联映射:一对一、一对多总结一二

(4)身份证实体对象,com.xuliugen.mybatis.demo.bean.Card

MyBatis关联映射:一对一、一对多总结一二

(5)用户表XML映射文件

MyBatis关联映射:一对一、一对多总结一二

<!-- 一对一关系映射 -->
<association column="card_id" property="card"
select="com.xuliugen.mybatis.demo.dao.CardMapper.selectByPrimaryKey"
javaType="com.xuliugen.mybatis.demo.bean.Card"/>

重点在,红色区域的内容:

1、column 表示数据库user表中的字段card_id; 
2、property 表示User实体对象中的属性card; 
3、select 表示根据column数据库属性的值作为该方法的参数; 
4、javaType表示返回的对象类型;

(6)身份证表XML映射文件

MyBatis关联映射:一对一、一对多总结一二

(7)测试Controller

MyBatis关联映射:一对一、一对多总结一二

(8)测试结果

MyBatis关联映射:一对一、一对多总结一二

二、一对多

场景:生活中每一个班级有多个学生,这是最简单的一对多的关系。

(1)学生表

MyBatis关联映射:一对一、一对多总结一二

其中,clazz_id 表示班级ID。

(2)班级表

MyBatis关联映射:一对一、一对多总结一二

(3)班级实体对象

MyBatis关联映射:一对一、一对多总结一二

(4)学生实体对象

MyBatis关联映射:一对一、一对多总结一二

(5)班级表XML映射文件

MyBatis关联映射:一对一、一对多总结一二

重点在,红色区域的内容:

1、fetchType 表示是否是懒加载,可以选择eager和lazy,正常情况下,一对多关联的结合对象,都设置为懒加载lazy; 
2、property 表示User实体对象中的属性card; 
3、select 表示根据column数据库属性的值作为该方法的参数; 
4、javaType表示返回的对象类型;

(6)学生表XML映射文件

MyBatis关联映射:一对一、一对多总结一二

(7)测试Controller

(8)测试结果

最后

http://pan.baidu.com/s/1jItB8HK 密码:slti


以上是关于MyBatis关联映射:一对一一对多总结一二的主要内容,如果未能解决你的问题,请参考以下文章

MyBatis学习09高级映射之一对多查询

mybatis一对一关联关系映射

Mybatis之关联关系(一对多多对多)

MyBatis关联映射

MyBatis的一对一关联关系映射

MyBatis框架关联映射