MybatisPlus
目标
- 基于MyBatisPlus完成标准Dao的增删改查功能
- 掌握MyBatisPlus中的分页及条件查询构建
- 掌握主键ID的生成策略
- 了解MyBatisPlus的代码生成器
入门步骤
- 建表
- 建SpringBoot
- pom.xml补全依赖
- 添加MP的相关配置信息
application.yml
- 根据数据库表创建实体类
- 创建Dao接口
- 编写引导类
Mybatisplus01QuickstartApplication
- 编写测试类
标准数据层开发
- 增
userDao.insert(user);
- 删
userDao.deleteById(1L);
- 改
userDao.updateById(user);
- 查
- 查单个
User user = userDao.selectById(2L);
- 查全部
List<User> userList = userDao.selectList(null);
- 查分页
userDao.selectPage(page,null);
- 查单个
- Lombko简化POJO实体类开发
- 添加依赖
- @Setter、@Getter、@ToString、@EqualsAndHashCode、@Data、@NoArgsConstructor、@AllArgsConstructor
DQL编程控制
- 条件查询方式
- QueryWrapper
- QueryWrapper+lambda
- LambdaQueryWrapper
- 单条件/多条件/null查询
- 查询投影
- 查询指定字段
lqw.select(User::getId,User::getName,User::getAge);
- 聚合查询
lqw.select("count() as count");
- 分组查询
lqw.groupBy("tel");
- 查询指定字段
- 查询条件设定
- 等值查询
.eq(User::getName, "Jerry”)
- 范围查询
.between(User::getAge, 10, 30);
- 模糊查询
.likeLeft(User::getName, "J");
- 排序查询
.orderBy(true,false, User::getId);
- 等值查询
- 字段映射与表名映射
- @TableFiled
value\exit\true\select
- @TableName
value
/—配置文件新增table-prefix
- @TableFiled
DML编程控制
- id生成策略控制
- @TableId AUTO\INPUT\ASSING_ID\ASSING_UUID
- 简化配置 — 配置文件新增id-type
- 多记录操作
.deleteBatchIds(list);
.selectBatchIds(list);
- 逻辑删除
- @TABLELOGIC
value\deval
- @TABLELOGIC
- 乐观锁
- 数据库&模型类添加对应属性
- 添加拦截器
- 测试类
updateById
快速开发
- 创建代码生成类—不用写
controller
,service
,mapper
和entity
的基础框架辽! - 代码地址:
https://mp.baomidou.com/guide/generator.html
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 炫仔的Blog!