MyBatis

Posted 凯哥学堂

tags:

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

声明:本栏目所使用的素材都是凯哥学堂VIP学员所写,学员有权匿名,对文章有最终解释权;凯哥学堂旨在促进VIP学员互相学习的基础上公开笔记。

Collection 集合映射
可以用了一对多的查询,对应的pojo中是一个List集合的属性

技术分享图片

技术分享图片

其中的oftype参数和javatype参数对应的就是list集合和普通属性的类型

假如我需要查询两个表中班级为同一个的数据,他们的班级一致,其中对应的学生有很多个,这里我们就用collection进行集合映射

技术分享图片

技术分享图片

鉴别器 discriminator
鉴别器在于确定使用哪个resulmap来映射sql查询语句,在实现中我们往往有一个基类,然后可以派生一些类。就好比一个表中其中一个列如果是不同类型的话就会按照不同的方式来封装,根据某一个列的类型进行数据封装。

动态SQL

If
按照以前我们的做法,如果我们想要修改表的数据,除非是全部每个列都修改,不然如果只修改其中一个列我们都需要每个列都写上一个修改方法,那样就会相当的麻烦。用上动态sql后,这样的操作无比的方便,他可以在你修改之前先判断数据是否存在,如果不存在就不需要修改。

技术分享图片

技术分享图片

技术分享图片

用set标签和不用set标签的区别在于如果不用set标签的话,我们在参数后都需要加上逗号隔开,加上set标签后就不需要了,他会自动生成语句。




以上是关于MyBatis的主要内容,如果未能解决你的问题,请参考以下文章

MybatisMyBatis 注解方式的基本 用法

MybatisMyBatis之缓存

MyBatisMyBatis的增删改查

Mybatismybatis登录实例

MybatisMybatis基础(中)

MybatisMybatis缓存