MyBatis中 ![CDATA[] ]的作用
在使用MyBatis过程中,有时我们的SQL是写在XML 映射文件中,如果写的SQL中有一些特殊的字符的话,在解析XML文件的时候会被当做XML自身元素,但我们不希望如此操作,所以我们要使用<![CDATA[ ]]>来解决
如下所示:
严格地讲,在 XML 中仅有字符 "<"和"&" 是非法的。省略号、引号和大于号是合法的,但是把它们替换为实体引用是个好的习惯,从而避免歧义。
<![CDATA[]]>和XML转义字符的关系,它们的功能就是一样的
只是应用场景不同:
(1)<![CDATA[]]>不能适用所有情况,转义字符可以;
(2) 对于短字符串<![CDATA[]]>写起来繁琐,对于长字符串转义字符可读性差;
(3) <![CDATA[]]>表示XML解析器忽略解析,所以更快一些。
底层码畜,如有不对还请点出,谢谢~
如果有帮助还请点下赞