对用户信息的模糊查找java_java中对SQL模糊查询通配符%的处理
在模糊查询的SQL语句中,如果有用户输入查询通配符‘%’,使用 select * from table where code like '%condition%'的SQL,会查出全部记录,这个如何解决叱?
if(!StringUtils.isEmpty(_cname)){
/** 处理模糊通配符%和_ */
sql.append(" and c.FCOURSEWARE_NAME LIKE '%").append(EscapeUtils.escapeStr(_cname)).append("%' escape '\\'");
model.addAttribute("_cname", _cname);
}
EscapeUtils的escapeStr方法:
/**
* Description: 处理转义字符%和_,针对ORACLE数据库
* @param str
* @return
*/
public static String escapeStr(String str){
if(str.startsWith("%") || str.startsWith("_")){
str = "\\" + str;
}
if(str.endsWith("_")){
int index = str.indexOf("_");
str = str.substring(0, index) + "\\" + "_";
}
if(str.endsWith("%")){
int index = str.indexOf("%");
str = str.substring(0, index) + "\\" + "%";
}
return str;
}
其实就是利用oracle的escape函数进行转义,把通配符转义成普通符号使用。
/** 总行数 */
String _sql = "select count(1) from ("+sql.toString()+") ";
long rowCount;
if(!StringUtils.isEmpty(keyWords)){
rowCount = courseInfoService.getCountByJdbc(_sql, map);
}
对用户信息的模糊查找java_java中对SQL模糊查询通配符%的处理相关推荐
- ORACLE中使用SQL语句查询所有员工的职位信息,并用DISTINCT消除重复信息。
ORACLE中使用SQL语句查询所有员工的职位信息,并用DISTINCT消除重复信息. 在sqlplus中执行下面语句: select job from emp: 显示结果如下: SQL> se ...
- Springboot项目如何设计接口中敏感字段模糊查询?
目录 前言 场景分析 实现方案 环境配置 依赖配置 代码实现 总结 前言 在<Springboot项目如何设计接口中敏感字段的加密.解密>和<Springboot项目如何设计接口中敏 ...
- MYSQL中LIKE(模糊查询)
文章目录 0 写在前面 1 代码格式 2 SQL数据准备 3 举例 3.1格式一:`[NOT] where 字段 LIKE '%' `:表示指代任意内容: 3.2 格式四:[NOT] where 字段 ...
- python数据库模糊查询_python中数据库like模糊查询方式
python中数据库like模糊查询方式 在Python中%是一个格式化字符,所以如果需要使用%则需要写成%%. 将在Python中执行的sql语句改为: sql = "SELECT * F ...
- 把数据保存到cook_将用户信息保存到Cookie中
/** * 把用户保存到Cookie * * @param request * @param response * @param member */ private void rememberPwdA ...
- 调用API接口登录后,获取用户信息保存到Vuex中并渲染到Vue页面
文件封装 步骤 核心请求文件 在 apiUse 文件夹中的 index.js 文件写 API接口方法 baseURL + url 后台完整地址 将信息写入 store 文件夹中的 index.js 文 ...
- 聊一聊数据加密中如何进行模糊查询
为了数据安全我们在开发过程中经常会对重要的数据进行加密存储,常见的有:密码.手机号.电话号码.详细地址.银行卡号.信用卡验证码等信息,这些信息对加解密的要求也不一样,比如说密码我们需要加密存储,一般使 ...
- mysql常见慢sql,MySQL中慢SQL的查询及原因分析
准备数据 查看系统变量 SHOW VARIABLES LIKE 'slow_query%'; slow_query_log:慢sql日志开启状态 slow_query_log_file:慢sql日志存 ...
- ArcGIS——数据库空间SQL(一、oracle中使用sql空间查询及st_astext等函数出错问题)
一.引言 将shp文件导入oracle中就想着直接用sql进行普通查询和空间查询,这样直接通过webserver发布就可以不用arcgis server直接进行接口调用了,感觉这样比较接触底层些,所以 ...
最新文章
- 关于幸福的开发(搞笑版)
- 排序算法(1)—直接插入排序
- React从入门到精通系列之(12)深入理解JSX
- Innodb隔离级别的实现原理
- java统计计数_java – 使用LongAdder计算统计计数器的最大值?
- LINUX下启动多个MYSQL服务
- python打包工具比较_Python 打包工具对比,Nuitka vs Pyinstaller
- Class ZipArchive not found,安装zip扩展
- 继暗影机器人跑路,守护者群管作者也宣布退网
- 【雕爷学编程】Arduino动手做(3)---微波雷达感应开关模块
- R语言使用pROC包的的plot.roc函数对单变量进行ROC分析并可视化ROC曲线、寻找最佳阈值(threshold、cutoff)、在可视化曲线中添加最佳阈值点
- Dissect HTTP3
- 元宇宙资讯|消息称苹果 MR 头显发售要等到 2025 年
- 通信原理及系统系列33——无线信道(快衰落)
- 苹果服务器维护不能刷机,iphone刷机失败不开机报错维修方法分享
- html如何让table表格垂直(上下)居中
- 工厂方法(整理自李建忠C++设计模式视频)
- linux 下opencv 安装的问题
- 《笨方法学 Python 3》35.分支和函数
- MyEclipse安装:MyEclipse安装教程(包含视频教程)