在使用mybatis书写sql语句时,很多时候会需要用到大于(>,>=)、小于(<,<=)、不等于(<> ,!=)
等特殊符号,由于mybatis使用xml文件格式,直接在SQL语句里添加 “<”会出错,因此就需要对相
关特殊符号进行转义或者使用CDATA区段。
1.将特殊符号转为实体引用,如下:
符号 | 原符号 | 替换符号 |
---|---|---|
小于 | < | < |
小于等于 | <= | <= |
大于 | > | > |
大于等于 | >= | >= |
不等于 | <> | <> |
与 | & | & |
单引号 | ’ | ' |
双引号 | " | " |
mybatis的mapper文件SQL的不等于写法:
select * form table where id <> '02da8d4b-cb0d-4847-a86b-aefa146531b6';
大于写法:
select * form table where age > 15
2.使用 CDATA 区段
在XML文档解析时,XML 文档中的所有文本都会被解析器所解析。只有 CDATA 区段
(CDATA section)中的文本会被解析器忽略。
大于<![CDATA[ >]]>
大于等于 <![CDATA[ >= ]]>
小于 <![CDATA[ < ]]>
小于等于 <![CDATA[ <= ]]>
不等于<![CDATA[ <> ]]>
mybatis的mapper文件SQL 不等于 写法:
select * form table where id <![CDATA[<>]]> '02da8d4b-cb0d-4847-a86b-aefa146531b6'
大于写法:
select * form table where age <![CDATA[>]]> 15