第一块:MyBatis 实现模糊查询方式

1.1 sql中字符串拼接

SELECT * FROM 表名 WHERE 字段名 LIKE CONCAT(CONCAT('%', #{参数}), '%');

1 2. 使用 ${…} 代替 #{…}

 SELECT * FROM 表名 WHERE 字段名 LIKE '%${参数}%';

注意:($不能防止sql注入, #{}—> 可以防止sql注入的问题)

1.3 程序中拼接

Java 代码

String searchText = new StringBuilder("%").append(text).append("%").toString(); parameterMap.put("text", searchText);

Mapper 映射文件

SELECT * FROM 表名 WHERE 字段名 LIKE #{参数};

第二块:MyBatis 实现特殊字符处理之<![CDATA[ ]]>

2.1 <![CDATA[ ]]> 简介

它的全称为character data,以"** “开始,以” ]]>" 结束,在两者之间嵌入不想被解析程序解析的原始数据,解析器不对CDATA区中的内容进行解析,而是将这些数据原封不动地交给下游程序处理。

2.2 MyBatis 自动转义特殊字符表

特殊字符 替代符号
& &amp;
< &lt;
> &gt;
" &quot;
&apos;

2.3 <![CDATA[ ]]> 特殊字符

xml 中表示: <= 小于等于、 >= 大于等于 需加 这样的标记: **** xml中有&的符号,需要

<![CDATA[&]]>这样表示&

<= 小于等于 :<![CDATA[ <= ]]>

>= 大于等于:<![CDATA[ >= ]]>

第三块 模糊查询包含特殊字符

解决办法: 使用 ${…} + <![CDATA[ ]]>

模板:

<select id="searchAll" parameterType="map" resultType="map">SELECT *FROM  表名 PWHERE 1=1 <if test="参数 != null and 参数 != ''"><![CDATA[ AND P.字段名 LIKE '%${参数}%']]></if>
</select>

MyBatis 解决模糊查询包含特殊字符相关推荐

  1. mongodb模糊查询包含特殊字符

    mongodb中的待特殊字符的模糊查询需要转义下才能查到 (name: /wo*2hjf/  查不到 name: /wo\*2hjf/  查得到  ) let str=wo*2hjf; let fil ...

  2. MyBatis:模糊查询的4种实现方式

    1.根据姓名模糊查询员工信息 1.1.方式一 步骤一:编写配置文件 步骤二:测试 步骤三:分析 此种方式需要在调用处手动的去添加"%"通配符. 1.2.方式二 说明: 使用方式一可 ...

  3. mybatis like模糊查询_Java自学之mybatis:模糊查询和多条件查询

    学习目的 使用mybatis进行模糊查询:查找category_表中包含cat的记录. 使用mybatis进行多条件查询:查找category_表中id>1,包含cat的记录. Part 1 模 ...

  4. mysql解决模糊查询包含关系

    mysql解决模糊查询包含关系 后台要根据期限筛选查询时如果用like, SELECT * from t_user_accord_invest t where t.invest_period like ...

  5. MyBatis实现模糊查询的三种方式

    MyBatis实现模糊查询的三种方式 准备 模糊查询 方式一 方式二 方式三 由于#{}是占位符本身,自带单引号,所以在模糊查询时需要一些技巧. 准备 数据库表 bean 模糊查询 以查询出所有用户名 ...

  6. 解决模糊查询问题 element UI 从服务器搜索数据,输入关键字进行查找

    解决模糊查询问题 element UI 从服务器搜索数据,输入关键字进行查找 参考文章: (1)解决模糊查询问题 element UI 从服务器搜索数据,输入关键字进行查找 (2)https://ww ...

  7. Mybatis学习记录(四)——Mybatis实现模糊查询的三种方法

    2018.4.8 仅为个人理解 不足之处欢迎指正~ 数据库说明: 我们在之前的数据库中添加三列:sex major class 现有如下记录: Mybatis进行模糊查询: Mybatis进行模糊查询 ...

  8. MongoDB 模糊查询包含/不包含字符串

    MongoTemplate模糊查询,spring boot MongoDB模糊查询 模糊查询 不包含 content  的记录 String content = "192.168.1.2&q ...

  9. MyBatis Plus 模糊查询报错, 但是不影响返回结果[解决]

    1 现状 模糊查询报错, 但不影响查询结果 2 报错信息 optimize this sql to a count sql has exception, sql:xxxxxxxxxxxxxxxxxxx ...

最新文章

  1. You must reset your password using ALTER USER statement before executing thi
  2. MYSQL 双主搭建
  3. ASP.NET MVC 1.0 NVelocityViewEngine
  4. 【转】c#中类的默认访问修饰符
  5. Altium designer原理图库中元件变动后在原理图中同步更新方法
  6. 利用PHP SOAP实现web service
  7. android手机打电话src,【SPILL 百科】SRC:Android 系统的 48kHz 音讯输出限制
  8. 视觉中的经典图像特征小结(一): 颜色直方图, HOG, LBP
  9. 我要带徒弟学写JAVA架构,引路架构师之路(Jeecg开源社区)
  10. 【译】WebSocket协议第五章——数据帧(Data Framing)
  11. 图片上一张与下一张切换
  12. 卑微的我,喜欢遥远的你
  13. mysql特殊字符转义_MYSQL特殊字符转义
  14. 错误 请再次按下快门释放按钮
  15. Canvas监测雷达
  16. unity 3d音效如何设置?,近大远小
  17. [Python模块]根据姓名笔画数排序
  18. spring mysql 事务回滚失败_Spring事务回滚失败
  19. CSP-J1 CSP-S1 第1轮 初赛 考前强化训练
  20. QT编写磨砂玻璃效果函数

热门文章

  1. 手术后多久可以做胆摘除_近视手术后多久可以化眼妆?
  2. Java LocalDate类| 带示例的format()方法
  3. Java Hashtable rehash()方法与示例
  4. Java ClassLoader getResources()方法与示例
  5. 保姆级教程,终于搞懂脏读、幻读和不可重复读了!(经典回顾)
  6. Google Guava,牛逼的脚手架
  7. 面试干货 | Java 能否自定义一个类叫 java.lang.System?
  8. jenkins用ssh agent插件在pipeline里实现scp和远程执行命令
  9. 解决VM 与 Device/Credential Guard 不兼容。在禁用 Device/Credential Guard 后,可以运行 VM 的方法
  10. c语言如何把void换成汉字,有没有大佬帮我把这个代码改成void函数形式的代码。拜托了!...