Mybatis如何解决sql中like通配符模糊匹配问题
更新时间:2022年01月14日 14:47:00 作者:时间辜负了谁
这篇文章主要介绍了Mybatis如何解决sql中like通配符模糊匹配问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
sql中like通配符模糊匹配问题
针对oracle数据库:
将查询条件通过功能类处理
/** * Description: 处理转义字符%和_,针对ORACLE数据库 * * @param str * @return */ public static String escapeStr(String str) { String temp = ""; for (int i = 0; i < str.length(); i++) { if (str.charAt(i) == '%' || str.charAt(i) == '_') { temp += "\\" + str.charAt(i); } else { temp += str.charAt(i); } } return temp; }
后台Contronller获得查询条件
并调用工具类处理
String areaname = request.getParameter("Areaname"); if (areaname != null) { if ("".equals(areaname)) { areaname = null; } else { areaname = StringUtils.escapeStr(areaname); } }
mapper.xml中对应的使用方法
<if test="param.areaname!=null"> and areaname like '%'||#{param.areaname}||'%' escape '\'</if>
使用like实现模糊匹配
方式一
select * from t_user where name like ' %${value}% '
方式二
select * from t_user where name like '%'||${value}||'%'
方式三
select * from t_user where name like #{do_it_in_java}
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
Java设计模式之抽象工厂模式AbstractFactoryPattern详解
这篇文章主要介绍了Java设计模式之抽象工厂模式AbstractFactoryPattern详解,抽象工厂模式是一种软件开发设计模式,抽象工厂模式提供了一种方式,可以将一组具有同一主题的单独的工厂封装起来,需要的朋友可以参考下2023-10-10详解spring+springmvc+mybatis整合注解
本篇文章主要介绍了详解spring+springmvc+mybatis整合注解,详细的介绍了ssm框架的使用,具有一定的参考价值,有兴趣的可以了解一下2017-04-04
最新评论