SSM—【笔记】【完结】1.5 MyBatisPlus
用MyBatisPlus完成标准Dao开发
一、MyBatisPlus简介
1、开发步骤:
核心为第 6 步
二、标准数据层开发
1、标准数据层CRUD功能
MP接口
换了个名的方法(接口)
Lombok
一个好用的小工具(依赖):提供一组注解 [ 能完成getting、setting、toString、有参无参构造方法等操作 ]
2、MP分页查询功能
MP准备了分页拦截器,配了就有分页功能
步骤:
开启MP日志:
调程序用的,一般默认开启
三、DQL控制
(DQL:对表中数据库进行查询)
1、条件查询方式
(1)条件查询三种方式
(2)组合查询条件
(3)条件查询的null值处理
2、查询投影
查询投影:设置查询出的结果
投影:就是从一个表中选择若干属性列组成一个新的关系
3、查询条件设定
eg:查询条件(方法)
查询API:更多查询条件设置参看https://mybatis.plus/guide/wrapper.html#abstractwrapper
4、字段映射与表名映射
问题一: 表字段与编码属性设计不同步
解决方案:属性注解—value属性
问题二: 编码中添加了数据库中未定义的属性
解决方案:属性注解—exist属性
问题三:采用默认查询开放了更多的字段查看权限
解决方案:属性注解—select属性
问题四:表名与编码开发设计不同步
解决方案:类注解
四、DML控制
(DML:对表中的数据增删改)
1、id生成策略
2、多数据操作(删除与查询)
3、逻辑删除
数据库增加字段来标记是否删除,而不是直接删除数据
数据库加自动、实体类加字段、关系绑定
开了逻辑删除功能后,原来执行删除语句变成了更新语句
4、乐观锁
概念:乐观锁和悲观锁是并发控制的两种不同策略。
乐观锁是指在操作数据时,先不加锁,而是在提交更新时,判断数据是否被其他线程修改过。如果没有被修改过,则更新成功;如果被修改过,则更新失败,需要重试或者回滚操作。乐观锁适用于多读少写的场景,可以提高并发性能。
悲观锁是指在操作数据时,先加锁,确保其他线程不能同时修改同一份数据。悲观锁适用于多写少读的场景,可以保证数据的一致性,但会降低并发性能。
实现:
表加字段、实体类配上字段、MP加拦截器(动态追加SQL语句)
五、快速开发
代码生成器
其实就是预设的模版+自己配置、参数
核心操作:main方法中创建代码生成器对象,执行代码生成器。
实现步骤:
1、导坐标
2、核心代码:创建代码生成器,执行代码生成器。
3、数据源的指定
4、配置(全局配置、包相关配置、策略配置)
源码查对应说明即可