XML与HTML区别,XML解析

来源:互联网 发布:数据统计图种类 编辑:程序博客网 时间:2024/06/06 10:53

1、XML与HTML的区别

XML 不是对 HTML 的替代 ,XML 是对 HTML 的补充。


XML 不会替代 HTML,理解这一点很重要。在大多数 web 应用程序中,XML 用于传输数据,而 HTML 用于格式化并显示数据。

对 XML 最好的描述是:XML 是独立于软件和硬件的信息传输工具。

比较内容HTMLXML  可扩展性不具有扩展性是元标记语言,可自定义新的标记作用焦点是数据的外观,旨在显示信息被设计来传输和存储数据,焦点是数据的内容语法要求不要求标记的嵌套、配对等,不要求标记之间具有一定的顺序严格要求嵌套、配对,遵循统一的顺序结构要求  可读性可维护性难于阅读、维护 结构清晰、便于阅读、维护 数据与格式数据和格式在一起数据和格式分离






  

2、XML解析

XML解析方式分为两种:DOM方式和SAX方式
DOM:Document Object Model,文档对象模型。这种方式是W3C推荐的处理XML的一种方式。
SAX:Simple API for XML。这种方式不是官方标准,属于开源社区XML-DEV,几乎所有的XML解析器都支持它。


XML解析开发包
JAXP:是SUN公司推出的解析标准实现。JDK
Dom4J:是开源组织推出的解析开发包。(SUN公司的一些技术的实现都在用)
JDom:是开源组织推出的解析开发包。


3、JAXP

JAXP:(Java API for XML Processing)开发包是JavaSE的一部分,它由以下几个包及其子包组成:(javase api)
org.w3c.dom:提供DOM方式解析XML的标准接口
org.xml.sax:提供SAX方式解析XML的标准接口
javax.xml:提供了解析XML文档的类


javax.xml.parsers包中,定义了几个工厂类。我们可以通过调用这些工厂类,得到对XML文档进行解析的DOM和SAX解析器对象。
DocumentBuilderFactory
SAXParserFactory

对xml进行解析   首先要获取到解析器

javax.xml.parsers 包中的DocumentBuilderFactory用于创建DOM模式的解析器对象 , DocumentBuilderFactory是一个抽象工厂类,
它不能直接实例化,但该类提供了一个newInstance方法 ,这个方法会根据本地平台默认安装的解析器,自动创建一个工厂的对象并返回。


调用 DocumentBuilderFactory.newInstance() 方法得到创建 DOM 解析器的工厂。

调用工厂对象的 newDocumentBuilder方法得到 DOM 解析器对象。

调用 DOM 解析器对象的 parse() 方法解析 XML 文档,得到代表整个文档的 Document 对象,进行可以利用DOM特性对整个XML文档进行操作了。

DOM模型(document object model)
DOM解析器在解析XML文档时,会把文档中的所有元素,按照其出现的层次关系,解析成一个个Node对象(节点)。


0 1
原创粉丝点击