关于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 相关文章推荐
启动Tomcat时出现大量乱码的解决方法
Jun 21 Java/Android
spring项目中切面及AOP的使用方法
Jun 26 Java/Android
Java基础之this关键字的使用
Jun 30 Java/Android
Java Kafka 消费积压监控的示例代码
Jul 01 Java/Android
SpringBoot快速入门详解
Jul 21 Java/Android
Android基于Fresco实现圆角和圆形图片
Apr 01 Java/Android
Java 超详细讲解数据结构中的堆的应用
Apr 02 Java/Android
Spring中的@Transactional的工作原理
Jun 05 Java/Android
Android基础入门之dataBinding的简单使用教程
Jun 21 Java/Android
Spring Cloud OpenFeign模版化客户端
Jun 25 Java/Android
Java+swing实现抖音上的表白程序详解
Jun 25 Java/Android
Springboot集成kafka高级应用实战分享
Aug 14 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 日期加减的类,很不错
2009/10/10 PHP
PHP foreach循环使用详解与实例代码
2010/05/08 PHP
php生成的html meta和link标记在body标签里 顶部有个空行
2010/05/18 PHP
PHP 使用MySQL管理Session的回调函数详解
2013/06/21 PHP
PHP中执行cmd命令的方法
2014/10/11 PHP
PHP模块memcached使用指南
2014/12/08 PHP
Laravel5中contracts详解
2015/03/02 PHP
php使用CutyCapt实现网页截图保存的方法
2016/10/03 PHP
js replace正则表达式应用案例讲解
2013/01/17 Javascript
js中方法重载如何实现?以及函数的参数问题
2013/08/01 Javascript
js判断字符是否是汉字的两种方法小结
2014/01/03 Javascript
extjs 如何给column 加上提示
2014/07/29 Javascript
基于jQuery实现复选框的全选 全不选 反选功能
2014/11/24 Javascript
JavaScript中的this关键字使用详解
2015/08/14 Javascript
JS实现IE状态栏文字缩放效果代码
2015/10/24 Javascript
使用jquery.qrcode.min.js实现中文转化二维码
2016/03/11 Javascript
JavaScript的instanceof运算符学习教程
2016/06/08 Javascript
jquery 判断div show的状态实例
2016/12/03 Javascript
全面总结Javascript对数组对象的各种操作
2017/01/22 Javascript
H5实现中奖记录逐行滚动切换效果
2017/03/13 Javascript
mui上拉加载更多下拉刷新数据的封装过程
2017/11/03 Javascript
360doc网站不登录就无法复制内容的解决方法
2018/01/27 Javascript
django 解决manage.py migrate无效的问题
2018/05/27 Python
python 函数嵌套及多函数共同运行知识点讲解
2020/03/03 Python
简单了解Java Netty Reactor三种线程模型
2020/04/26 Python
Python控制鼠标键盘代码实例
2020/12/08 Python
欧洲最大的拼图游戏商店:JigsawPuzzle.co.uk
2018/07/04 全球购物
意大利一家专营包包和配饰的网上商店:Borse Last Minute
2019/08/26 全球购物
就业自荐书
2013/12/05 职场文书
酒店led欢迎词
2014/01/09 职场文书
军人违纪检讨书
2014/02/04 职场文书
关于读书的演讲稿600字
2014/08/27 职场文书
大学毕业生个人总结
2015/02/28 职场文书
爱国主义教育基地观后感
2015/06/18 职场文书
SQLServer 错误: 15404,无法获取有关 Windows NT 组/用户 WIN-8IVSNAQS8T7\Administrator 的信息
2021/06/30 SQL Server
CSS三大特性继承性、层叠性和优先级详解
2022/01/18 HTML / CSS