标签:认识cdata
快下班了,今天总结一下对<![CDATA[ ]]>的认识,不许告诉别人,这可不是偷闲啊:
假设有如下学生成绩表:
如果要求借助Ibatis在XML文件中写出分数小于72分的学生姓名,那么XML文件中相应的SQL语句为:
SELECT `name` FROM student_score_table <![CDATA[ WHERE score < 72 ]]>
非
SELECT `name` FROM student_score_table WHERE score < 72
为什么第二种方式不对呢?因为小于号在XML文件中被识别为标签的开头部分,更直白的说,小于号已经被XML规范认定为了“关键字字符”,这个时候如果坚持使用小于号就需要对其进行必要的转义,言尽于此,想必你已经猜到“<![CDATA[ ]]>”的作用了——规避与XML规范冲突的字符。
什么是CDATA
CDATA全名为character data,指不使用XML解析器解析的文本数据。在标记CDATA下,所有与XML规范冲突的关键字字符串都被XML处理程序一视同仁地当做字符数据看待,CDATA的形式如下:
<![CDATA[文本内容]]>
其中文本内容中不能出现字符串“]]>”,另外CDATA不能嵌套。
标签:认识cdata
原文地址:http://blog.csdn.net/gaohuanjie/article/details/39232519