Mybatis plus中的like查询问题

 更新时间:2022年06月27日 16:00:13   作者:爱吃蛋挞的kk  
这篇文章主要介绍了Mybatis plus中的like查询问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

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", "两边%");

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Java 自定义Spring框架与Spring IoC相关接口分析

    Java 自定义Spring框架与Spring IoC相关接口分析

    Spring框架是由于软件开发的复杂性而创建的。Spring使用的是基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅仅限于服务器端的开发
    2021-10-10
  • 解决Java的InputMismatchException异常

    解决Java的InputMismatchException异常

    这篇文章介绍了解决Java的InputMismatchException异常的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-12-12
  • Java8时间转换(LocalDateTime)代码实例

    Java8时间转换(LocalDateTime)代码实例

    这篇文章主要介绍了java8时间转换(LocalDateTime)代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-11-11
  • java接收文件流+response.body()调用两次问题(分别接收文件和对象)

    java接收文件流+response.body()调用两次问题(分别接收文件和对象)

    这篇文章主要介绍了java接收文件流+response.body()调用两次问题(分别接收文件和对象),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-06-06
  • SpringSecurity页面授权与登录验证实现(内存取值与数据库取值)

    SpringSecurity页面授权与登录验证实现(内存取值与数据库取值)

    Spring Security是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架,本文主要介绍了SpringSecurity页面授权与登录验证实现,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-06-06
  • java绘制五子棋棋盘

    java绘制五子棋棋盘

    这篇文章主要为大家详细介绍了java绘制五子棋棋盘,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-01-01
  • Mybatis-Plus saveBatch()批量保存失效的解决

    Mybatis-Plus saveBatch()批量保存失效的解决

    本文主要介绍了Mybatis-Plus saveBatch()批量保存失效的解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-01-01
  • Java详细分析讲解泛型

    Java详细分析讲解泛型

    在正式进入内容之前说明一下:泛型的内容太多,也太复杂。这里因为Java中写数据结构的时候会使用到,所以加上。关于泛型我找了挺多文章,再结合自己的理解,尽可能将其讲清楚。不求会使用泛型,只要求后面数据结构出现泛型的时候能够知道是在干什么即可
    2022-05-05
  • SpringBoot项目改为SpringCloud项目使用nacos作为注册中心的方法

    SpringBoot项目改为SpringCloud项目使用nacos作为注册中心的方法

    本文主要介绍了SpringBoot项目改为SpringCloud项目使用nacos作为注册中心,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-04-04
  • Java使用File类遍历目录及文件实例代码

    Java使用File类遍历目录及文件实例代码

    本篇文章主要介绍了Java使用File类遍历目录及文件实例代码,详细的介绍了File类的使用,有兴趣的可以了解一下。
    2017-04-04

最新评论