关于EntityWrapper的in用法


Posted in Java/Android onMarch 22, 2022

EntityWrapper的in用法

EntityWrapper<UserLife> wrapper = new EntityWrapper<>();
wrapper.eq("is_valid", 1);
wrapper.in("life_name", "ge,edu,career");
List<UserLife> userLabelList = userLabelService.selectList(wrapper);

in的第二个参数可以是字符串也可以是list但是注意字符串中","间不能有空格,不然会查出来的语句就是这样的

关于EntityWrapper的in用法

mybatis-plus EntityWrapper in

环境:

springBoot+mybatis

源码:

        /**
     * <p>
     * IN 条件语句,目前适配mysql及oracle
     * </p>
     *
     * @param column 字段名称
     * @param value  匹配值 集合
     * @return this
     */
    public Wrapper<T> in(String column, Collection<?> value) {
        return in(true, column, value);
    }
    
    /**
     * <p>
     * IN 条件语句,目前适配mysql及oracle
     * </p>
     *
     * @param condition 拼接的前置条件
     * @param column    字段名称
     * @param value     匹配值 集合
     * @return this
     */
    public Wrapper<T> in(boolean condition, String column, Collection<?> value) {
        if (condition && CollectionUtils.isNotEmpty(value)) {
            sql.WHERE(formatSql(inExpression(column, value, false), value.toArray()));
        }
        return this;
    }

如果condition不传,等同于:condition: true;

如果传入的value不为空,相当于改 in 查询语句为拼接;

举个例子

    //代码
    @Override
    public List<User> selectByCaseIdSet(Set<String> idSet) {
        EntityWrapper<User> wrapper = new EntityWrapper<>();
        wrapper.in(!CollectionUtils.isEmpty(idSet), "id", idSet);
        return this.selectList(wrapper);
    }
/**
 * 如果idSet 为空,sql: select * from user 
 * 如果idSet 不为空, sql: select * from user where id in (idSet)
 ** /

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Java/Android 相关文章推荐
Java中PriorityQueue实现最小堆和最大堆的用法
Jun 27 Java/Android
java解析XML详解
Jul 09 Java/Android
springboot 启动如何排除某些bean的注入
Aug 02 Java/Android
关于EntityWrapper的in用法
Mar 22 Java/Android
Java 超详细讲解IO操作字节流与字符流
Mar 25 Java/Android
Java 超详细讲解数据结构中的堆的应用
Apr 02 Java/Android
Java字符缓冲流BufferedWriter
Apr 09 Java/Android
java高级用法JNA强大的Memory和Pointer
Apr 19 Java/Android
Java实现扫雷游戏详细代码讲解
May 25 Java/Android
Spring IOC容器Bean的作用域及生命周期实例
May 30 Java/Android
java.util.NoSuchElementException原因及两种解决方法
Jun 28 Java/Android
maven 解包依赖项中的文件的解决方法
Jul 15 Java/Android
SpringBoot2零基础到精通之异常处理与web原生组件注入
Mar 22 #Java/Android
Java字符串逆序方法详情
Mar 21 #Java/Android
剑指Offer之Java算法习题精讲二叉树的构造和遍历
剑指Offer之Java算法习题精讲二叉树专项训练
InterProcessMutex实现zookeeper分布式锁原理
springboot+zookeeper实现分布式锁
Mybatis-Plus进阶分页与乐观锁插件及通用枚举和多数据源详解
Mar 21 #Java/Android
You might like
php 获取客户端的真实ip
2009/11/30 PHP
php app支付宝回调(异步通知)详解
2018/07/25 PHP
PHP 图片合成、仿微信群头像的方法示例
2019/10/25 PHP
JavaScript 入门·JavaScript 具有全范围的运算符
2007/10/01 Javascript
javascript 嵌套的函数(作用域链)
2010/03/15 Javascript
鼠标滑在标题上显示图片的JS代码
2013/11/19 Javascript
XMLHttpRequest处理xml格式的返回数据(示例代码)
2013/11/21 Javascript
BootStrap智能表单实战系列(三)分块表单配置详解
2016/06/13 Javascript
如何处理JSON中的特殊字符
2016/11/30 Javascript
Angular.js基础学习之初始化
2017/03/10 Javascript
使用Xcache缓存器加速PHP网站的配置方法
2017/04/22 Javascript
详解webpack+vue-cli项目打包技巧
2017/06/17 Javascript
基于vue2的canvas时钟倒计时组件步骤解析
2018/11/05 Javascript
详解Vue.directive 自定义指令
2019/03/27 Javascript
为nuxt项目写一个面包屑cli工具实现自动生成页面与面包屑配置
2019/09/29 Javascript
JavaScript之Blob对象类型的具体使用方法
2019/11/29 Javascript
如何在Vue中使localStorage具有响应式(思想实验)
2020/07/14 Javascript
在Python的Flask中使用WTForms表单框架的基础教程
2016/06/07 Python
Python 加密的实例详解
2017/10/09 Python
tensorflow学习教程之文本分类详析
2018/08/07 Python
Python 2/3下处理cjk编码的zip文件的方法
2019/04/26 Python
centos7之Python3.74安装教程
2019/08/15 Python
Python使用tkinter模块实现推箱子游戏
2019/10/08 Python
Python Django2 model 查询介绍(条件、范围、模糊查询)
2020/03/16 Python
Opencv python 图片生成视频的方法示例
2020/11/18 Python
CSS改变网页中鼠标选中文字背景颜色例子
2014/04/23 HTML / CSS
Vans奥地利官方网站:美国原创极限运动潮牌
2018/09/30 全球购物
英国最好的温室之家:Greenhouses Direct
2019/07/13 全球购物
洗车工岗位职责
2014/03/15 职场文书
党员公开承诺书
2014/03/25 职场文书
2014年“向国旗敬礼”网上签名寄语活动方案
2014/09/27 职场文书
新员工辞职信范文
2015/05/12 职场文书
教师节校长致辞
2015/07/31 职场文书
七年级作文(600字3篇)
2019/09/24 职场文书
《原神》新角色演示“神里绫人:林隐泓洄” 宠妹狂魔
2022/04/03 其他游戏
vue el-table实现递归嵌套的示例代码
2022/08/14 Vue.js