mybatis模糊查询去除特殊符号%(百分号)和_(下划线)

在使用mybatis的模糊查询时,有俩个特殊符号需要注意:

%:相当于任意多个字符;

_:相当于任意的单个字符;

 

第一步: 根据需求可以选择甄别,如果有要求排除特殊符号,那么写法如下:

在控制层接收到对应值得地方,加入replaceAll():

if(param != null){
            map.put("param", param.replaceAll("%", "/%").replaceAll("_", "/_"));
        }

 

第二步: 这里给特殊符号进行替换;然后其他地方不做处理,直到mapper。xml的sql语句这里:

在对应的字段后面加入  ESCAPE '/'

<if test="param != null and param!= ''">
              AND sp.param like '%'||#{param}||'%' ESCAPE '/'
</if>

 

以上,排除特殊符号的模糊查询完成。

 

posted @   全栈九九六  阅读(3294)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
历史上的今天:
2017-09-02 设计模式(14)--Command(命令模式)--行为型
点击右上角即可分享
微信分享提示