mybatis-plus 从2.x到3.x升级指南
mybatis-plus 2.x 到 3.x 有以下改进
- 分页查询可以直接返回
Ipage<T>的子类(下面会有详细使用说明) Wrapper<T>实现类的改动
1.
EntityWrapper<T>更名为QueryWrapper<T>
2.新增一个实现类UpdateWrapper<T>用于update方法BaseMapper<T>的改动
1.去除了
insertAllColumn(T entity)方法
2.去除了updateAllColumn(T entity)方法
3.新增update(T entity, Wrapper<T> updateWrapper)方法
Wrapper<T>使用
QueryWrapper<T>与UpdateWrapper<T>共有方法
| 方法名 | 说明 |
|---|---|
| allEq | 基于 map 内容等于= |
| eq | 等于 = |
| ne | 不等于 <> |
| gt | 大于 > |
| ge | 大于等于 >= |
| lt | 小于 < |
| le | 小于等于 <= |
| between | BETWEEN 条件语句 |
| notBetween | NOT BETWEEN 条件语句 |
| like | LIKE '%值%'' |
| notLike | NOT LIKE '%值%' |
| likeLeft | LIKE '%值' |
| likeRight | LIKE '值%' |
| -------- | -------- |
| isNull | NULL 值查询 |
| isNotNull | NOT NULL 值查询 |
| in | IN 查询 |
| notIn | NOT IN 查询 |
| inSql | IN 查询(sql注入式) |
| notInSql | NOT IN 查询(sql注入式) |
| groupBy | 分组 GROUP BY |
| orderByAsc | ASC 排序 ORDER BY |
| orderByDesc | DESC 排序 ORDER BY |
| orderBy | 排序 ORDER BY |
| having | HAVING 关键词(sql注入式) |
| -------- | -------- |
| or | or 拼接 |
| apply | 拼接自定义内容(sql注入式) |
| last | 拼接在最后(sql注入式) |
| exists | EXISTS 条件语句(sql注入式) |
| notExists | NOT EXISTS 条件语句(sql注入式) |
| -------- | -------- |
| and(Function) | AND (嵌套内容) |
| or(Function) | OR (嵌套内容) |
| nested(Function) | (嵌套内容) |
QueryWrapper<T>特有方法
| 方法名 | 说明 |
|---|---|
| select | SQL 查询字段内容,例如:id,name,age(重复设置以最后一次为准) |
UpdateWrapper<T>特有方法
| 方法名 | 说明 |
|---|---|
| set | SQL SET 字段(一个字段使用一次) |
分页查询
IPage<T> selectPage(IPage<T> page, @Param("ew") Wrapper<T> queryWrapper);
以上面的方法为例,入参一个
IPage<T>接口的子类(可以使用mp自带的一个叫Page<T>的子类), 返回一个IPage<T>,其实这个返回的分页类==入参的分页类, 如果你需要自定义一个分页方法只需要注意一点:入参第一位放置你使用的IPage<T>子类!
update(T entity, Wrapper<T> updateWrapper)使用
只需要注意,入参第一位是需要update的实体类,
updateWrapper里的实体类是用于生成where条件的
mybatis-plus 从2.x到3.x升级指南的更多相关文章
- springboot整合mybatis遇到无法扫描MaperScan包的问题
1.启动类加上@MaperScan注解后,一直报错如下: Error creating bean with name 'platUserMapper' defined in file [D:\work ...
- Mybatis Plus 入坑(含最新3.X配置)
简介 Mybatis-Plus(简称MP)是一个 Mybatis 的增强工具,在 Mybatis 的基础上只做增强不做改变,为简化开发.提高效率而生. 使用它可以简化单表的操作, 节省开发时间, 国人 ...
- Spring Boot 2.0 升级指南
Spring Boot 2.0 升级指南 前言 Spring Boot已经发布2.0有5个月多,多了很多新特性,一些坑也慢慢被填上,最近有空,就把项目中Spring Boot 版本做了升级,顺便整理下 ...
- Hibernate----面试题
什么是Hibernate? hibernate是一个基于ORM持久框架,可以让程序员以面向对象的思想操作数据库,提高生产效率. 什么是ORM? orm不过是一种思想,对象关系映射.是对象关系模型,如h ...
- GitHub 上值得推荐的开源电子书
GitHub 上值得推荐的开源电子书 开源不仅局限于软件领域,开源同样意味着自由选择的权利和对知识开放的追求. 可以参照这篇文章,已附上所有超链接编程类开放书籍荟萃-Linux Story 语言无关类 ...
- Java初中级程序员面试题宝典
Java基础部分 &与&&区别? &和&&都是逻辑运算符,都是判断两边同时真则为真,否则为假:但是&&当第一个条件不成之后,后面的条件都 ...
- Java开发者职业生涯要看的200+本书
作者:老刘链接:https://www.zhihu.com/question/29581524/answer/684872838来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明 ...
- Solon 1.6.18 发布,轻量级应用开发框架
关于官网 千呼万唤始出来: https://solon.noear.org .整了一个月多了...还得不断接着整! 关于 Solon Solon 是一个轻量级应用开发框架.支持 Web.Data.Jo ...
- 【分享】标准springMVC+mybatis项目maven搭建最精简教程
文章由来:公司有个实习同学需要做毕业设计,不会搭建环境,我就代劳了,顺便分享给刚入门的小伙伴,我是自学的JAVA,所以我懂的.... (大图直接观看显示很模糊,请在图片上点击右键然后在新窗口打开看) ...
- Java MyBatis 插入数据库返回主键
最近在搞一个电商系统中由于业务需求,需要在插入一条产品信息后返回产品Id,刚开始遇到一些坑,这里做下笔记,以防今后忘记. 类似下面这段代码一样获取插入后的主键 User user = new User ...
随机推荐
- django配置setting文件
添加app到INSTALLED_APPS列表中 INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.co ...
- CentOS6.x 下安装Python pyyaml模块
Python中使用yaml时候,需要安装下组件pyyaml,直接安装pyyaml时提示“ext/_yaml.c:4:20: error: Python.h: No such file or direc ...
- ubuntu网络配置及端口名修改
一.网络配置文件 buntu系统进行网络配置有的时候用图形界面不起作用,这种情况下可以直接修改某些启动脚本或配置文件 Ubuntu系统进行网络配置涉及到几个配置文件1./etc/network/int ...
- DevExpress GridView 那些事儿
1:去除 GridView 头上的 "Drag a column header here to group by that column" --> 点击 Run Desig ...
- HanLP 关键词提取算法分析详解
HanLP 关键词提取算法分析详解 l 参考论文:<TextRank: Bringing Order into Texts> l TextRank算法提取关键词的Java实现 l Text ...
- Spring Cloud(Dalston.SR5)--Eureka 服务实例健康检查
默认情况下,Eureka 客户端每隔 30 秒会发送一次心跳给服务器端,告知正常存活,但是,实际环境中有可能出现这种情况,客户端表面上可以正常发送心跳,但实际上服务是不可用的,例如,一个需要访问数据的 ...
- 报错: unable to register MBean
解决方法: 在SpringBoot项目中配置文件加上 spring.jmx.enabled=false https://stackoverflow.com/questions/27440985/una ...
- Winfrom DataGridView中使用Tooltip
第一步:添加DataGridView.Tooltip控件,略 第二步:设置ToolTip 相关属性,略,参考下图 第三步:DataGridView 添加 CellMouseEnter.CellMous ...
- JAVA面向对象编程之购物车界面的设计与功能的实现
1.小组成员及分工 小组成员 负责工作 兰泽祥 负责总体界面.Git代码库 吴修恩 负责MVC模式.类名包名的规范化 2.Git 仓库地址 仓库地址:https://gitee.com/lanzexi ...
- 【spring boot】使用@Value映射properties文件属性
描述 使用@Value映射properties文件属性到Java字段 重点 使用@PropertySource 注解指定*.properties文件位置: 使用@Value进行注入: my.prope ...