mybatis-plus字段模糊查询 mybatis-plus指定字段模糊查询的实现方法
masonqiang 人气:14想了解mybatis-plus指定字段模糊查询的实现方法的相关内容吗,masonqiang在本文为您仔细讲解mybatis-plus字段模糊查询的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:mybatisplus模糊查询,mybatisplus模糊查询like,mybatis-plus复杂查询,下面大家一起来学习吧。
mybatis-plus版本:3.3.0
oracle版本:11g
很常见的一个需求场景:某张表在前端显示时,查询条件中,往往name字段需要模糊查询,否则默认mybatis-plus是用的全字符匹配查询。如何最小限度地改造代码,实现某个字段模糊查询,其实mybatis-plus官方文档给出了答案:
通过@TableField注解地condition属性,可以配置某个字段,始终使用模糊匹配,打开condition类,去看看有哪些可选项:
一共有5个可选项,默认是采用第一个:EQUAL。
接下来改造自己的代码:
然而在数据库为oracle的情况下会报错,打印出来的SQL如下:
SELECT COUNT(1) FROM TEST_TABLE WHERE TITLE LIKE CONCAT('%', '激光', '%');
由于oracle的CONCAT函数不支持拼接2个以上的参数,因此产生了错误。因此自己定义一个注解类,@TableField注解不变,
只需要注意引入的SqlCondition类是你自己新定义的类,或者为了避免混淆,干脆你换个名字不叫SqlCondition,如下:
问题解决。
总结
加载全部内容