Mybatis plus中的like查询问题

作者:爱吃蛋挞的kk 时间:2022-03-18 09:14:30 

Mybatis plus中like查询问题

又谈到了Mybatis plus了,真的很是痛心疾首,在做模糊查询的时候出现了一个问题,版本还是2.0.8,我觉得大问题没有小问题不断吧!

上代码

        @MethodAnnot()
        public static List<VwUserRole> getVwUserRoleByList(VwUserRole      vwUserRole){  
              return vwUserRoleService.selectList(
                        new EntityWrapper<VwUserRole>(vwUserRole).like("username",vwUserRole.getUsername(), SqlLike.DEFAULT));
        }

模糊查询USER,讲道理来说是没有问题的,下面我们查一下这个SQL是什么

SELECT id,username,del_flag AS delFlag FROM vw_user_role WHERE username='a' AND del_flag='0' AND (username LIKE '%a%')

应该一下就可以看的出来 这样的查询语法怎么可能查询的出来数据呢?我觉得这算是一个Mybatis plus的Bug的吧!

解决方法也很简单,换个写法

         @MethodAnnot()
        public static List<VwUserRole> getVwUserRoleByList(VwUserRole vwUserRole){
                EntityWrapper ew=new EntityWrapper();
                ew.setEntity(new VwUserRole());
                ew.eq("del_flag",'0');
                ew.like("username",vwUserRole.getUsername(), SqlLike.DEFAULT);
                return vwUserRoleService.selectList(ew);
        }

我们看一下这样查询的SQL是什么

SELECT id,username,del_flag AS delFlag FROM vw_user_role WHERE (del_flag = 0 AND username LIKE '%a%')

这样是一点问题也没有的哦,应该能看出问题在那里吧?哈哈哈,不说了。

感觉还有好多地方会有坑等着我,踩一个坑记录一下吧!!!

Mybatis plus中like使用说明

like的四种用法

like(boolean condition, String column, String value)
like(String column, String value)
like(boolean condition, String column, String value, SqlLike type)
like(String column, String value, SqlLike type)
  • condition 是一些条件,符合才可加上你的sql

  • column为 数据库属性

  • value为 你传入的值

  • type 为 % 拼在那边:

  • SqlLike 为枚举类

    LEFT("left", "左边%"),
    RIGHT("right", "右边%"),
    CUSTOM("custom", "定制"),
    DEFAULT("default", "两边%");

来源:https://blog.csdn.net/qq_18427977/article/details/78564749

标签:Mybatis,plus,like,查询
0
投稿

猜你喜欢

  • 详解Java中while和do-while循环、break的使用

    2022-10-24 13:37:04
  • Spring Boot mybatis-config 和 log4j 输出sql 日志的方式

    2021-05-31 22:13:20
  • Android 实现当下最流行的吸顶效果

    2021-12-30 18:46:33
  • Android 获取屏幕高度,标题高度,状态栏高度(实例代码)

    2022-10-17 15:49:37
  • C# 装箱和拆箱的知识回顾

    2022-07-19 09:27:58
  • Android刮刮卡功能具体实现代码

    2021-08-06 04:12:24
  • Android定时器和倒计时实现淘宝秒杀功能

    2023-01-18 02:17:04
  • c#读写注册表示例分享

    2022-06-26 13:08:45
  • C#窗体编程不显示最小化、最大化、关闭按钮的方法

    2023-03-03 00:04:29
  • OpenCV实现反阈值二值化

    2022-06-29 16:02:33
  • Java技能点之SimpleDateFormat进行日期格式化问题

    2023-09-09 01:50:26
  • IntelliJ IDEAx导出安卓(Android)apk文件图文教程

    2022-06-22 18:26:16
  • C#利用TreeView控件实现目录跳转

    2021-07-26 02:57:50
  • Java实现验证码的产生和验证

    2022-10-30 22:41:39
  • Spring中校验器(Validator)的深入讲解

    2022-03-05 11:58:35
  • java通过ip获取客户端Mac地址的小例子

    2021-12-22 06:37:07
  • spring @Validated 注解开发中使用group分组校验的实现

    2021-09-29 14:07:22
  • java使用RandomAccessFile类基于指针读写文件实例代码

    2021-07-29 17:45:45
  • 使用java生成json时产生栈溢出错误问题及解决方案

    2023-01-09 17:41:10
  • Java的数据类型和参数传递(详解)

    2022-12-30 18:52:25
  • asp之家 软件编程 m.aspxhome.com