xml

1.xml的定义用途

XML全称为 Extensible Markup Language,意思是可扩展的标记语言。XML语法上和HTML比较相似,但HTML中的元素是固定的,而XML的标签是可以由用户自定义的。W3C在1998年2月发布1.0版本,2004年2月又发布1.1版本,但因为1.1版本不能向下兼容1.0版本,所以1.1没人用。同时,在2004年2月W3C又发布了1.0版本的第三版。
常用的就是1.0版本。XML主要的用途就是分离数据和使用数据的应用程序。专注于对数据本身的描述,不涉及数据如何使用的信息,如表示格式的说明。文件本身的格式是自说明的。于是XML数据文件就很通用,各种语言都可以实现其PARSER。跨平台加标PARSER,相当适合平台/应用间交换数据之用。过去我们搞过EDI,用UN/EDIFACT标准,还有部颁平面文件标准。后来一看XML就感觉这个东西的妙处了。
2.工作原理
包括服务器端解析与客户端解析。
服务器端解析是通过XSLT转换工具(如Xalan)将XML和XSL合成为HTML,送到客户端。 客户端解析是把XML和XSL都显现给客户端,把解析的任务交给浏览器。
A、XML解析:
1.文档对象模型(DOM),一种基于树结构的API。
2.XML简单API(SAX),一种事件驱动的API.
B、DOM解析:
1.基于树状结构的API
2.整个XML文档必须在内存中解析和存储
3.客户端应用程序就可以随机访问这些对象
4.大型文档则会造成内存紧张
C、SAX解析:
1.SAX提高一种用于解析XML文档的事件驱动模型,使用回调机制将事件通知应用程序
2.特点:
不必将整个文件加载到内存中,占有的内存少
不能对文档进行随机访问
SAX是只读的
文档只能遍历一次。
D、DOM和SAX解析技术的实现过程:
1.JAXP(Java API for XML):JAXP是对应用程序隐藏了特定解析器的接口,它提供了访问DOM和SAX实现的抽象层机制。
2.JDOM:
基于树型结构,利用纯JAVA的技术对XML文档操作
把SAX和DOM的功能有效地结合起来
用Java语言读、写、操作XML的优化API
3.DOM4J:
采用了java结合框架并完全支持DOM,SAX和JAXP
性能优异、功能强大和易用使用
大量使用接口,灵活性高
原文地址:https://www.cnblogs.com/seulwong/p/8649214.html