0
点赞
收藏
分享

微信扫一扫

The content of elements must consist of well-formed character data or markup


记录今天在编写Mybatis的mapper.xml文件时的一个错误。


The content of elements must consist of well-formed character data or markup.


替换形式1:原因是xml文件无法解析 < 符号,应该替换为对应的转义字符形式

替换形式2:这是XML语法。在CDATA内部的所有内容都会被解析器忽略,被<![CDATA[ ]]>这个标记所包含的内容将表示为纯文本

目标形式

<

<=

>

>=

&

替换形式1

&lt;

&lt;=

&gt;

&gt;=

&amp;

替换形式2

<![CDATA[ >= ]]>

<![CDATA[ >= ]]>

<![CDATA[ >= ]]>

<![CDATA[ >= ]]>

<![CDATA[ >= ]>


用法示例:

个人理解的最佳实践:如果SQL语句使用到的符号比较少,就是用替换形式1;如果用到的比较多,那就直接使用替换形式2。



SELECT ID, AGE, TIME
FROM TEST_FORM
WHERE ID ">> 12
AND AGE ">> 10
AND AGE < 23
AND TIME = '2020-11-12'

或者

-- 这种全包的形式,为将全体解析为文本,直接传入数据库。当这个SQL需要接收我们前台传入的值,慎用全包围!!!
<![CDATA[
SELECT ID, AGE, TIME
FROM TEST_FORM
WHERE ID > 12
AND AGE > 10
AND AGE < 23
AND TIME = '2020-11-12'
]]>

或者

SELECT ID, AGE, TIME
FROM TEST_FORM
WHERE ID <![CDATA[ > ]]> 12
AND AGE <![CDATA[ > ]]> 10
AND AGE <![CDATA[ < ]]> 23
AND TIME = '2020-11-12'


举报

相关推荐

0 条评论