MyBatis的XML中元素格式
背景
在使用MyBatis根据时间范围动态SQL拼接查询数据库时报错:Caused by: Caused by: org.xml.sax.SAXParseException: The content of elements must consist of well-formed character data or markup.(元素内容必须由格式正确的字符数据或标记组成。)
解决办法
MyBatis 在编写动态SQL的时候,是基于OGNL的。
- 不改变符号,依然使用 “ > ” 或者 “ < ” ,则需要使用 OGNL 标签,将该符号包起来,可以是包裹单个符号,也可以将整句包裹寄来,示例SQL如下:
1 |
|
- 使用 OGNL 语法表达式,在 OGNL 语法表达式中不能直接写符号,需要要使用其转义后的字符,对应如下:
符号 | 转义字符 | 说明 |
---|---|---|
< | < | 小于 |
<= | <= | 小于等于 |
> | > | 大于 |
>= | >= | 大于等于 |
& | & | 逻辑与 |
‘xxx’ | ' | 单引号 |
“xxx” | " | 双引号 |
1 |
|
参考的这篇文章:https://blog.csdn.net/Hello_World_QWP/article/details/86513179
MyBatis的XML中元素格式
http://liushuliang.github.io/2024/11/07/MyBatis的XML中元素格式/