视频教程:https://www.imooc.com/learn/1130
资料:
代码:
快速入门小例子:
如何配置:
第一步:配置下数据库
第二步:配置下dao
第三步:设置mapper接口
---1-5---
insert是对象。
---2-1---
第一个注解,数据库和我们的数据库的表的名字不一样的时候:
第二个注解:默认是识别的id,即使主键是驼峰也不会识别,只能加注解。
第三个注解,字段和数据库的列不一样:
---2-2---
数据库没有相应的字段,如备注信息等:
第一种解决办法:
第二种解决办法:
第三种解决办法:
关于驼峰:
---2-3---
第一个方法:
第二个方法:
第三个方法:
---3-1---
条件构造器查询:
我们看下BaseMapper
看到这里会帮你传入一些Wrapper。
关于一个一对多的查询:https://www.cnblogs.com/yshyee/p/12713679.html
第一个查询:
两种获得Wrapper的方法。
注意这个name是列名不是实体类的属性的。
第二个查询:
第三个查询:
---3-2---
为什么是apply是是没有具体的需求就是apply的。
关于data_format
关于条件构造器:
---3-3---
第一个需求:
wq的类型完全是事先就定义好的。
看下函数式编程需要什么:
函数式编程:
第二个需求:
sql的or优先级是小于and的优先级的。
---3-4---
第一个查询:
第二个查询:
---
第三个查询:
---3-5---
第一个查询,我只要id和name:
第二个查询,去掉不要的剩下的是要的:
写在前面和后面都是可以的:
---3-6---
原来的方法:
下面是我们新增的方法:
---3-7---
创建条件构造器的时候使用实体的对象。
实体不为null为条件。
目前这个只是支持的是等值的查询,如何在查询的时候可以支持不是等值的查询呢?
小于:
---3-8---
AllEq的用法:
案例:
---
我们再来看一个特性:
这个意思是不等于name的才放在条件中的。
---3-9---
第一个查询:
其他的类型封装:
这个查询的使用场景就是你要查的只是返回部分的字段其他的都是null的时候要这么用的。
还有一个场景:
---
第二个查询:
---
第三个查询:返回总的记录数的值
---
第四个查询:
看一下执行的效果:返回的多于一条报错
---3-10---
lmbda的条件构造器:
第一个查询:
三种构建lambda构造器的方式。
第二个查询,再来一个复杂一点的:
好处就是避免写错列名。
第三个查询,新的写法:
---3-11---
我们自定义自己的sql:
为什么是ew:
代码:
测试下:
另一种方式写在xml文件中:
第一步写yml文件:
第二步:
这个注意下不用加where的。
自定义sql:https://blog.csdn.net/kanglong129/article/details/98611508
---4-1---
分页查询(物理分页):
第一步:配置类
第二步:
传入的是当前的页数和每页返回的条数。
---
瀑布流的分页:
修改:
---
多表连查的分页:
第一步:
第二步:写xml
第三步:测试
---4-2---
第一个查询:
更新功能:
我们先看下BaseMapper,根据id更新,其它的出现在set中。
第二个查询,需要两个参数,一个是实体,一个是查询条件出现在where中:
查询:
查询:
第三个查询:注意一点
会重复的:
第四个查询,简洁的写法:
第五个查询:
第六个查询:
---5-1---
删除:
第一个查询:
第一步:
第二步:
第二个查询:
第三个查询:这个也可以传一个实体会在where中
---5-2---
ew思想:https://www.imooc.com/qadetail/331185
如何实现AR模式:
第一步:实体对象继承Model类
第二步:
查询:查出来是新的对象不是原对象。
查询:
更新:
删除:
---
一个很重要的方法:
注意:
---6-1---
主键策略:
局部主键策略:
第一步:
第二步:
第三步执行:
取回主键
---
把数据库的主键策略改为非自增的:
---
UUID:
---
雪花算法:
---
注意:
---
全局的策略:
注释掉:
---6-2---
配置1:
配置2:
配置3:
配置4:
注意configuration和configLocation不能同时出现的。
配置5:
这个是null不会插入的。
局部策略:
这个是null和空串不会插入的(在insert和update中)。
配置6:
---6-3---
通用service:
区别:
第一个查询,这个是报错的因为返回是多行:
只找第一个:
第二个查询,批量插入:
---
第三个查询:
第四个查询:
---7-1---