mybatis学习

本文介绍了Mybatis中ResultMap的重要性和使用技巧,包括配置属性映射、联合查询(多对一)、分页查询、参数传递和缓存策略。通过实例演示了如何处理复杂查询结果并结合对象关系映射,以及如何利用注解简化操作。
摘要由CSDN通过智能技术生成

这一部分不用在意,面试基本不考,里面内容也基本用不到,了解即可。

mybatis重点:结果映射resultmap。parameterType传入参数。

找到了之前的配置好的mybatis代码,稍微看下代码就记起来了,代码看B站视频自己弄。

sqlSession.commit();
sqlSession.close();
增删改必须有提交才能完成。也可以在openSession时设置自动commit。

parameterType=“com.example.demo.pojo.User”
parameterType=“map” map可以自己控制有哪些属性。

like 模糊查询 注入字符串。
在这里插入图片描述
引入一个配置文件,替换属性,或者直接配置属性。
在这里插入图片描述

在这里插入图片描述
resultmap很重要的一个元素,将查询到的数据库字段和java pojo作映射。尽量自己配置属性映射,可能会自动按顺序,或者按名称映射。

日志可以显示sql语句执行过程。

在这里插入图片描述
写分页查询语句需要用到前面说的map<String,Object> 传参数。

简单sql语句可以用注解,再绑定mapper就可以执行。

在这里插入图片描述
注解实现增删改查。一般考虑sql的参数和返回值,xml的resultmap才能比较好解决返回值复杂的情况。

查询所有学生并且需要对应的老师信息。sql语句如下:
在这里插入图片描述
多对一联合查询怎么用mybatis写?(学生pojo有id,name,teacher)
在这里插入图片描述
(不建议这样)这里用resultmap,想办法将sql语句查询到的tid转为javaType的Teacher(这是因为面向对象里面用的引用类型,而数据库不能有冗余设计所以只有一个teacher主键),用association加一个select解决。

在这里插入图片描述
这里的resultmap也是将sql查询到的结果装进Student对象里。这个就很好,记得之前好像也可以创建一个新类来展示结果。

在这里插入图片描述

在这里插入图片描述
对对象的集合属性进行子查询。
在这里插入图片描述
直接用联合查询,用collection封装列值。

缓存
一级缓存以sqlsession为一个单位保存。
二级缓存按namespace。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值