在开发中编写xml文件中,有些内容不想让xml解析器解析执行,而是当作原始内容处理,遇到此种情况,可以将这些内容放在CDATA区域内,对于CDATA区域内的内容,xml解析器不会进行处理,而是原封不动的输出。语法: <![CDATA[ 需要处理的内容 ]]>
xml约束:约束xml结构的条约
常用的约束技术:DTD约束、Schema约束
xml解析的两种常用方式:dom解析、sax解析
两种方式的优缺点比较:
dom解析对内存的消耗比较大,dom方式会将xml解析成一棵dom树对象,装载到内存中,当xml足够大的时候(比如1个G),就会造成内存溢出,因此dom方式不适合解析大文档。dom方式的优点是增删改查比较方便,可以直接通过document对象调用要操作的节点进行操作。
sax解析是读一行处理一行,读一行处理一行,因此对内存没有压力。但缺点是sax解析不适合对文档进行增删改查。
总结:如果需要频繁的对xml文档进行增删改查,请用dom解析;
如果只需要读取xml内容,请用sax解析。
sax采用事件处理的机制解析xml,涉及两部分:解析器和事件处理器。
创建出解析器后,就可以指定解析器去解析某个xml文档。