首页 > 数据库 >关于mybatis- SQL 语句中出现 < 的解决方案

关于mybatis- SQL 语句中出现 < 的解决方案

时间:2022-11-15 17:48:02浏览次数:40  
标签:语句 name age 转义 user SQL mybatis

'<' 符号和 '<=' 符号不能直接在映射文件中使用

  • 解决方法一

字符转义

 

 

以上这张表就是 MyBatis 映射文件特殊字符转义表,'<' 符号在 XML 映射文件中其实是特殊字符,因为它和映射文件中的标记符号 ’< / >' 无法区别,所以需要用转义字符把它替换掉。

那么,'<' 问题解决办法如下:

select * from tb_user where name = #{name} and age &lt; #{user.age};

执行测试,正确显示结果,问题搞定。

  • 解决方法二

使用

在使用 mybatis 时我们 SQL 语句是写在 XML 映射文件中,如果 SQL 语句中有一些特殊的字符的话,在解析 XML 文件的时候会被转义,但我们不希望它被转义,所以我们可以使用来解决。

是什么,这是XML语法。在CDATA内部的所有内容都会被解析器忽略,只简单当做字符串处理。

那么,'<' 问题解决办法如下:

select * from tb_user where name = #{name} and age <![CDATA[ < ]]> #{user.age};

执行测试,OK

标签:语句,name,age,转义,user,SQL,mybatis
From: https://www.cnblogs.com/origin-zy/p/16893228.html

相关文章

  • mysql数据库的备份
    linux备份使用python脚本,要求有python3和mysqldump脚本中保留时间有点问题,不会自动删除,后期再看vim/usr/bin/mysql_bakup.py#!/usr/bin/python36#-*-coding:ut......
  • Mysql:存储引擎
    InnoDB引擎和MyISAM引擎InnoDB引擎MySQL从3.23.34a开始就包含InnoDB存储引擎。大于等于5.5之后,默认采用InnoDB引擎。InnoDB是MySQL的默认事务型引擎,它被设计用......
  • MySQL驱动表和被驱动表说明
    老男孩Linux运维MySQL中级DBA-第12章-MySQL驱动表和被驱动表说明-补#驱动表和被驱动表####1.什么是驱动表和被驱动表?在join连接查询中,驱动表在SQL语句执行的过程中总......
  • MySQL、Kafka(含zookeeper)、Redis的docker-composer文件
    以下docker-composer文件仅用于开发环境,快速搭建原型使用,生产环境,请进行针对性设置。MySQLversion:'3.1'services:db:image:mysql:8.0.28command:--d......
  • CentOS 7 patroni 搭建postgresql高可用
    CentOS7patroni搭建postgresql高可用InstallPatroni安装python等#!/bin/bashyuminstallpython-psycopg2-yyuminstallepel-release-yecho"installp......
  • mysql动态新增字段
    使用PREPARE预处理语句动态新增字段,先判断表的字段是否存在,如果存在不新增,反之新增。--1.动态新增字段(储存过程);--结束符号DROPprocedureifEXISTSsp_add_col......
  • pgsql基本操作
     一.关于系统表pg_class记录了数据库中的表,索引,序列,视图("关系")。 其中比较重要字段有:relname 表,索引,视图等的名字。relnamespace 包含这个关系的名字空间(模式)的......
  • Centos7安装MySQL8.0-操作手册
    一.Mysql8.0.31安装(YUM方式)1)首先删除系统默认或之前可能安装的其他版本的mysql或者mairadb[[email protected]~]#foriin$(rpm-qa|grep-E"mysql|mariadb");dor......
  • logstash 同步mysql 到elasticsearch
    1.下载logstash要和es的版本一致 用的是7.17.6     下载地址:https://www.elastic.co/cn/downloads/past-releases#logstash2.配置  LS_JAVA_HOME  系......
  • 循环语句 while
    循环语句whilewhlie语句结构while(表达式)循环语句;//在while循环中,break用于永久的终止循环intmain(){ inti=1; while(i<=10) { if(i==5) ......