MybatisPlus学习笔记
多看官方文档
开源仓库:https://gitee.com/baomidou/mybatis-plus-samples/tree/master
代码 在 test目录下 sql文件在resource目录下
mybatis-plus-sample-generator: 代码生成器示例
mybatis-plus-sample-crud: 完整 CRUD 示例
mybatis-plus-sample-wrapper: 条件构造器示例
mybatis-plus-sample-pagination: 分页功能示例
…
来源:https://blog.csdn.net/qq_34508530/article/details/88945034
简化CURD
相比两种写法,我更喜欢ActiveRecord的模式写法,因为我不用注入userMapper,new了一个对象之后直接调用方法操作就行了,复杂的查询也很简单,新建一个EntityWrapper作为查询对象,Wrapper接口封装了很多常用的方法。几乎sql能写出来的条件调用Wrapper的方法就能表现出来。
插入返回主键id值
new User();
insert(user)
int id=user.getId()
service继承了ServiceImpl,自己看源码,许多简单的业务可以直接在controller层调用service接口实现类操作,例如:remove,get,update,list等函数(没有 insert)
BaseMapper的源码:
public interface BaseMapper<T> extends Mapper<T> {int insert(T entity);int deleteById(Serializable id);int deleteByMap(@Param(Constants.COLUMN_MAP) Map<String, Object> columnMap);int delete(@Param(Constants.WRAPPER) Wrapper<T> wrapper);int deleteBatchIds(@Param(Constants.COLLECTION) Collection<? extends Serializable> idList);int updateById(@Param(Constants.ENTITY) T entity);int update(@Param(Constants.ENTITY) T entity, @Param(Constants.WRAPPER) Wrapper<T> updateWrapper);T selectById(Serializable id);List<T> selectBatchIds(@Param(Constants.COLLECTION) Collection<? extends Serializable> idList);List<T> selectByMap(@Param(Constants.COLUMN_MAP) Map<String, Object> columnMap);T selectOne(@Param(Constants.WRAPPER) Wrapper<T> queryWrapper);Integer selectCount(@Param(Constants.WRAPPER) Wrapper<T> queryWrapper);List<T> selectList(@Param(Constants.WRAPPER) Wrapper<T> queryWrapper);List<Map<String, Object>> selectMaps(@Param(Constants.WRAPPER) Wrapper<T> queryWrapper);List<Object> selectObjs(@Param(Constants.WRAPPER) Wrapper<T> queryWrapper);<E extends IPage<T>> E selectPage(E page, @Param(Constants.WRAPPER) Wrapper<T> queryWrapper);<E extends IPage<Map<String, Object>>> E selectMapsPage(E page, @Param(Constants.WRAPPER) Wrapper<T> queryWrapper);
}
链式查询
@Test
void contextLoads() {QueryWrapper<Employee> wrapper = new QueryWrapper<Employee>().like("last_name", "b").eq("age", 30).eq("gender", 1);employeeMapper.delete(wrapper);
}
自定义分页查询
【参考:Mybatis-plus 自定义分页查询_enjoy嚣士的博客-CSDN博客】
MybatisPlus学习笔记相关推荐
- MyBatis-Plus 学习笔记
MyBatis-Plus 学习笔记 学习官网: https://mp.baomidou.com/guide/ 一.快速入门 1.简介 MyBatis的增强工具,在Mybatis的基础上只做增强功能,兼 ...
- MyBatisPlus 学习笔记_MP的AR模式
狂神说 MyBatisPlus 学习笔记 一.快速入门 文档:https://mp.baomidou.com/ 使用第三方组件: 导入对应依赖 研究依赖如何配置 代码如何编写 提高扩展技术能力 步骤: ...
- MyBatisPlus学习笔记【part2】
MyBatisPlus学习笔记[part2] 一.查询操作 1.通过多个id批量查询 调用selectBatchIds方法. @Test public void testSelect1(){List& ...
- 【精简版】MyBatis-Plus学习笔记
文章目录 1.前言 2.什么是MyBatis-Plus 3.MyBatis-Plus快速入门 3.1 准备工作 3.2 操作流程 3.2.1 根据user表创建实体类 3.2.2 创建Mapper接口 ...
- 【Mybatis-Plus 学习笔记】2、日志配置及常用 CRUD
前言 上一篇文章中我们讲了 Mybatis-Plus 的定义以及相关特点,并从零开始编写了一个 SpringBoot + Mybatis-Plus 的实例.今天我们就来看看,如何利用 MP 来实现对数 ...
- Mybatis-plus学习笔记
Mybatis-plus 一.介绍 1. 概述 官网:https://baomidou.com/ 解释:MyBatis-Plus(简称 MP)是一个MyBatis的一个插件 作用:在 MyBatis ...
- MybatisPlus学习笔记(8)----扩展功能
1.逻辑删除 说明: 只对自动注入的sql起效: 插入: 不作限制 查找: 追加where条件过滤掉已删除数据,且使用 wrapper.entity 生成的where条件会忽略该字段 更新: 追加wh ...
- 2.6 springBoot学习笔记(2.6)——- 整合mybatisPlus
更多文章 更多系列文章在个人网站 springBoot学习系列笔记文章 springBoot学习笔记(1)-- 搭建springBoot项目 文章目录 更多文章 springBoot学习系列笔记文章 ...
- MyBatis-Plus(spring版)学习笔记
目录 前言 1 MyBatis-Plus简介 1.1 简介 1.2 特性 1.3 支持数据库 1.4 框架结构 1.5 代码及文档地址 2 入门案例 2.1 开发环境 2.2 准备工作 2.2.1 创 ...
- MybatisPlus学习(四)条件构造器Wrapper方法详解
https://www.cnblogs.com/xianz666/p/13857733.html MybatisPlus学习(四)条件构造器Wrapper方法详解 文章目录 1.条件构造器 2.Que ...
最新文章
- 新手搭建阿里云FTP服务器
- 你想学习Java ?资源都在这里了
- CSS3 Transitions 你可能不知道的知识点
- cfs调度算法JAVA实现_关于CFS/BFS调度算法
- 【机器学习实践】Jupyter Notebook安装 侧边导航栏功能 操作及其他常用扩展功能介绍...
- 推荐一个Silverlight多文件(大文件)上传的开源项目(转载)
- 首张牌照花落“东方购物” 或抬高电视购物门槛
- eslint+prettier+husky的配置说明
- 第二章 人工智能专题之Python进阶 - Matplotlib库
- java刷题--69x的平方根
- cisco privilege权限
- 微软专利技术介绍系列课程
- 得力打印机(DL888D型号)Linux对接——Java+C版
- 【小飞象出海】Facebook海外企业广告账户如何申请基本流程
- Android Jason数据解析及显示
- 华为鸿蒙电脑操作系统测试版,华为鸿蒙OS测试
- AndroidO Notification横幅通知(HangUp Notification)
- jquery svg恐龙蛇颈龙动画
- 数据分析之matplotlib 条形图(六)
- mac里python注释的快捷键_新手小白学Python必备编程利器Pycharm快捷键大全(Win+Mac)...