Skip to content

mybatis

  1. xml常见的转义符:
转义字符符号含义
&lt;<小于号
&gt;>大于号
&amp;&
&apos;'单引号
&quot;"双引号
  1. 为什么需要使用XML转义符?

XML解析器会将某些字符视为标记的一部分,例如 <&。如果直接在文本中使用这些字符,可能会导致解析错误。例如:

xml
<example>
    <text>1 < 2</text>
    <text>1 & 2</text>
</example>

在上面的例子中,解析器会认为 <& 是标记的一部分,而不是文本的一部分。为了解决这个问题,可以使用XML转义符来转义这些字符。

xml
<example>
    <text>1 &lt; 2</text>
    <text>1 &amp; 2</text>
</example>
  1. 使用CDATA段避免频繁转义

如果文本中包含大量特殊字符,频繁使用转义符会降低代码的可读性。此时,可以使用CDATA段来包裹文本内容。CDATA段中的内容会被解析器忽略,不会被解析为XML标记

CDATA段语法

xml
<![CDATA[文本内容]]>

例如:

xml
<example>
    <text><![CDATA[这是一个包含特殊字符 < > & ' " 的文本]]></text>
</example>
  1. MyBatis中的SQL语句

使用转义符

xml
<select id="findUsers" resultType="User">
    SELECT * FROM users WHERE age &lt; 30 AND name &gt; 'John'
</select>

使用CDATA段

xml
<select id="findUsers" resultType="User">
    <![CDATA[
        SELECT * FROM users WHERE age < 30 AND name > 'John'
    ]]>
</select>

版权声明