前台模糊查询中用“\%”替换字符串中的“%”

2023-11-10

    最近在做电商项目,前端开发好后就丢给我们。用的时候发现一个缺陷

    前台模糊查询的时候,输入一个 % 或者包含 %的词。查询的时候不准确。

    解决过程中第一个问题:

    前端用了Js的 decodeURL() 转码。将前台输入的%转码了,无法传到后台。

    参考:http://www.w3school.com.cn/jsref/jsref_decodeURI.asp

    第二个问题:

    后台接收到包含%的参数,例如:”%“,传给mybatis后,拼出的SQL语句变成这样了:

   select * from table where column like ”%%%“;  外层两个 % 是sql查询时候用来匹配多个字符的。中间 %是传入的参数,但是被SQL当作通配符了。

    所以此处需要将传入的参数”%“ 转换为”\%“传入,sql语句条件变成 ...like "%\%%",中间的%就不会被认为是通配符了。

   查询资料后,解决方法是在后台代码将参数传入mapper查询前做如下处理: 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

前台模糊查询中用“\%”替换字符串中的“%” 的相关文章

  • 模糊查询-注意事项

    1 动态查询语句 2 SQL中占位符不能在单引号中 xff0c 否则 xff0c 会以 进行查询数据 39 param 39 39 39 3 SQL中不能使用加号进行字符串拼接 xff0c 加号是用来做运算的 39 39 43 39 D 3
  • 使用java中replaceAll方法替换字符串中的反斜杠

    今天在项目中使用java中replaceAll方法将字符串中的反斜杠 34 34 替换成空字符串 34 34 xff0c 结果出现如下的异常 xff1a 1 java util regex PatternSyntaxException Un
  • 分页 + 模糊查询 有坑!

    前言 不知道你有没有使用过Mysql的like语句 xff0c 进行模糊查询 xff1f 不知道你有没有将查询结果 xff0c 进行分页处理 xff1f 模糊查询 xff0c 加上分页处理 xff0c 会有意想不到的坑 xff0c 不信我们
  • 将String类型的xml转换成对象方法

    将String类型的xml转换成对象 private Object convertXmlStrToObject Class
  • JS 中 replace 和 replaceAll 的区别?

    方法解释 两种方法都返回一个新字符串 原始字符串保持不变 并且改方法可以传两个参数 参数一 pattern pattern 可以是一个 字符串 或一个 正则表达式 参数二 replacement replacement 可以是一个字符串或一
  • 前台模糊查询中用“\%”替换字符串中的“%”

    最近在做电商项目 前端开发好后就丢给我们 用的时候发现一个缺陷 前台模糊查询的时候 输入一个 或者包含 的词 查询的时候不准确 解决过程中第一个问题 前端用了Js的 decodeURL 转码 将前台输入的 转码了 无法传到后台 参考 htt
  • java基础之replace,replaceAll

    走在乡间的小路上 回首过往 以下代码结果都是显示在Console框中 所以 n会被解析成换行 n只显示 n 所以看到结果换行其实是输出了 n 看到输出 n 其实输出的是 n replace和replaceAll是编程中经常用到的替换函数 成
  • js如何获取当前时间、前几个月或后几个月时间

    获取当前的时间 格式为 YYYY MM DD function getNowTime var year nowDate getFullYear var month nowDate getMonth 1 lt 10 0 nowDate get
  • Maven 项目打包源文件 *-sources.jar

    在 pom xml 配置文件中添加以下插件
  • mongodb按照字段模糊查询方法

    数据库直接查询 db student find name regex jack options i db student find name regex jack i db student find name jack i 开源组件使用 g
  • java换行符

    我想知道为什么我没有得到预期的结果 String t 1302248663033 t replaceAll n System out println t 输出是 1302248663033 所以我想知道为什么 n仍然在那里 有人知道吗 n
  • 如果条件为假,则将单元格留空

    其他问题也涉及到这一点 并提供了对于非常大的数据集不可行的解决方案 我有一个跨 9 列的公式 如下所示 IF A1 A2 B2 zz 然后 我自动填充大约 350 万个单元格 复制 gt 粘贴值 然后我找到 zz 并将其替换为 空单元格 然
  • 字符串替换反斜杠

    如何进行反斜杠的字符串替换 输入源字符串 sSource http www example com value 在上面的字符串中 我想用 替换 替换后的预期输出 sSource http www example com value 我从第三
  • 如何在 Dart 中用双反斜杠替换反斜杠“\”?

    如何用双反斜杠 替换字符串中的单反斜杠 我尝试过这个 但它不起作用 main String string back slash back slash back slash back slash String replaced string
  • 为什么这个 Java String.replaceAll() 代码不起作用?

    我以前在 Java 中使用过 string replaceAll 没有遇到任何问题 但我对这个感到困惑 我认为它会正常工作 因为没有 或 字符 这是我正在尝试做的事情 String testString constant float win
  • 如何使用 String ReplaceAll 在出现某些字符时不进行替换

    我需要替换文本中的一些单词 但我需要在替换策略中添加条件 如下所示 我想更换word1 with word2 String word1 word1 String word2 word2 但我不想更换word1如果它前面是word3这是 St
  • JavaScript ReplaceAll 使用变量而不是字符串进行不区分大小写的搜索

    我想做一个 JavaScriptreplaceAll 在不区分大小写的搜索中使用变量 而不是字符串 但也保留匹配文本的大小写 在返回中 例如 console log doc p doc p toString substring 0 26 v
  • 替换从 javascript 获取的字符

    我正在制作一个程序 从 flickr 集中提取所有图片 我在代码中发现每个图片链接都有一个大字符串 问题是这样的 链接具有以下格式 https c2 staticflickr com 4 3925 14562233192 3fe2b8fe1
  • String.replace所有单反斜杠为双反斜杠

    我正在尝试转换String something 进入String something using replaceAll 但我不断收到各种错误 我认为这是解决方案 theString replaceAll 但这给出了以下例外 java uti
  • 在新文本文件中打印替换行

    我正在尝试编辑 matlabfile 并替换某些特定行中的一些编码部分 init 但是 使用下面的格式进行更改根本不会更改行上下文 它将打印相同的旧行 知道我做错了什么吗 replaceAll 不适合将行中的某些单词替换为其他单词 提前致谢

随机推荐

  • 推拉模式

    推 push 模式是一种基于客户器 服务器机制 由服务器主动将信息送到客户器的技术 联想一下木马的端口反弹技术 在push模式应用中 服务器把信息送给客户器之前 并没有明显的客户请求 push事务由服务器发起 push模式可以让信息主动 快
  • 手机连电脑USB选择MTP连接方式,并解决没有MTP选项的问题

    MTP全称是 Media Transfer Protocol 中文译作 文件传输 usb选择MTP的一般步骤 手机连电脑 usb连接方式选择MTP 如果没有MTP 选择 File Transfer或文件传输或设备文件管理 即为打开usb的M
  • React:非受控组件&ref

    非受控组件 在受控组件中 表单数据由react处理 让表单数据由dom处理 就是非受控组件 使用ref从DOM中获取表单数据 点击按钮 Input输入框获得焦点 import React from react class H extends
  • 驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接

    启动服务失败 报错信息 com microsoft sqlserver jdbc SQLServerException 驱动程序无法通过使用安全套接字层 SSL 加密与 SQL Server 建立安全连接 错误 sun security v
  • IDEA 代码质量规范插件SonarLint

    IDEA 安装SonarLint插件 1 打开setting 找到Plugins选项 安装SonarLint 插件 如果有就跳过这一步 检索 SonarLint 安装成功后 重新启动IDEA编辑器 2 使用SonarLint 手动检测类文件
  • linux部署web服务器-Nginx

    linux部署web服务器 Nginx 前言 有很多小伙伴想要建立一个自己的web站点 今天就给大家演示一下 准备工作 1 Nginx安装包 2 Linux服务器 3 PCRE安装包 4 手 方式一 手动编译安装 1 安装编译库 yum y
  • jpa利用Specification实现多条件查询排序

    Entity实体类 import java time Instant import javax persistence Column import javax persistence Entity import javax persiste
  • js大纲(流程控制语句对象,函数,数组等)

    一 运算符 1 逻辑运算符 非运算 与运算 像爱情 或运算 像亲情 2 赋值运算符 3 关系运算符 gt gt lt lt 非数值比较时先转换为数字再比较 比较字符串中字符的Unicode编码 4 相等运算符 5 条件运算符也叫三元运算符
  • 操作系统知识点总结(四)进程同步和临界区互斥问题

    一 进程同步的基本概念 临界资源 同步和互斥 在多道程序环境下 进程是并发执行的 不同进程之间存在着不同的相互制约关系 为了协调进程之间的相互制约关系 引入了进程同步的概念 临界资源 虽然多个进程可以共享系统中的各种资源 但其中许多资源一次
  • FPGA学习记录:第28章 VGA显示器驱动设计与验证

    硬件平台 Cyclone IV E EP4CE10F17C8 开发平台 Quartus II 64 Bit Version 13 0 1 Build 232 06 12 2013 SP 1 SJ Full Version 开发板 野火征途p
  • Android——使用ListView显示信息列表

    1 理解ListView的基础使用 1 作用 Android系统中显示列表的控件 2 两种适配器 ArrayAdapter SimpleAdapter 1 数据适配器 作用 把复杂的数据 数组 链表 数据库 集合等 填充在指定视图界面上 是
  • xp系统一直跳出宽带连接服务器,电脑开机后会自动弹出自动宽带连接提示窗口 怎么关闭?...

    自从电脑接宽带后 我们经常会用到宽带连接 甚至为了方便操作 我们直接让电脑开机就自动宽带连接了 而当我们接上路由后 我们会发现电脑再也不用宽带连接了 而这时电脑由于之前被我们设置为开机自动宽带连接 而导致经常会弹出提示窗口 那我们该如何去关
  • Linux--进程间通信、IPC、管道

    目录 1 进程间通信的方法 2 IPC机制 1 有命管道 1 简介 5 管道的特点 6 循环写读 2 无名管道 1 简介 2 代码 4 总体特点 5 管道实现图 1 进程间通信的方法 1 管道 2 信号量 3 共享内存 4 消息队列 5 套
  • java - jdwp远程调试线协议的使用

    前言 线上服务器出现的bug 因为各种复杂环境的原因 经常会很难在本地调试 只能到处打log 然后去服务器查看log日志 以定位问题产生原因 是否一工具能像idea中本地debug一样能直接断点调试呢 介绍 JDWP Java Debug
  • 华为上机考试注意事项及编程技巧(精品)

    这是一篇关于华为招聘软件类职位上机考试的博客 主要介绍一下华为机考的流程 注意事项以及一些机试题中常用的编程技巧 写得有点长 但都是尽心尽力敲的 如果真的要参加华为招聘 或者类似公司的招聘 建议稍微花点时间看完 话不多说 直接进入正题 一
  • 我对维度建模和范式建模的一点理解

    谈维度建模和范式建模之前 先了解下模型设计的三个阶段吧 概念模型 将业务划分成几个主题 逻辑模型 定义各种实体 属性 关系 物理模型 设计数据对象的物理实现 比如表的命名规范 字段的命名规范 字段类型等 一 范式建模 我先来介绍一下范式 范
  • 思维的特点和缺陷

    人类总是喜欢歌颂自己的大脑 比如 思想的威力 逻辑的威力 数学的威力 数学来自于思考 科学的威力 科学来源于思考 还有 意识 这个 人类与动物最大的区别 i blah blah 不过 几乎没有人关心过这种想法究竟来自于人体的哪个器官 心理学
  • 海思3559 安装

    设置地址 开机后任意键 进入 u boot 界面显示 hisilicon 以下内容转自 海思开发记录 一 3559A开发环境搭建 whitefish520的博客 CSDN博客 海思3559a 说明 这次安装的是Ubuntu14 04 64位
  • java8 lambda 获取list对象中重复数据

    工作上的场景 简单记录一下 在这里直接借用业务上的list 不再new 了 List
  • 前台模糊查询中用“\%”替换字符串中的“%”

    最近在做电商项目 前端开发好后就丢给我们 用的时候发现一个缺陷 前台模糊查询的时候 输入一个 或者包含 的词 查询的时候不准确 解决过程中第一个问题 前端用了Js的 decodeURL 转码 将前台输入的 转码了 无法传到后台 参考 htt