XML解析-- DOM , SAX, JDOM ,JAXB, DOM4j

DOM:DocumentBuilderFactory

  |-- w3c提供,将xml文件全部读入内存,组成数据树,以便快速访问节点。

  |-- 消耗系统内存,不适合文件较大xml

SAX:

  |-- 基于事件的处理方法,在标签开始和结束以及错误等地方调用相应的接口实现方法。

  |-- 具有优异的性能和存储空间小

  |-- 使用不方便

JDOM:

  |-- 类似DOM,使用SAX实现,性能较好

JAXB:

  |-- Sun,将schema或者(DTD)映射成java Object

  |-- 有固定的schema,无法处理动态xml

Dom4j:

  |-- 性能最好(hibernate)  

时间: 2024-11-26 01:40:03

XML解析-- DOM , SAX, JDOM ,JAXB, DOM4j的相关文章

DOM、JDOM、DOM4J的区别

dom是解析xml的底层接口之一(另一种是sax)   而jdom和dom4j则是基于底层api的更高级封装    dom是通用的,而jdom和dom4j则是面向Java语言的       DOM 是用与平台和语言无关的方式表示 XML 文档的官方 W3C 标准.DOM 是以层次结构组织的节点或信息片断的集合.这个层次结构允许开发人员在树中寻找特定信息.分析该结构通常需要加载整个文档和构造层次结构,然后才能做任何工作.由于它是基于信息层次的,因而 DOM 被认为是基于树或基于对象的.DOM 以及

非常简单的XML解析(SAX解析、pull解析)

这里只是把解析的数据当日志打出来了 非常简单的xml解析方式 1 package com.example.demo.service; 2 3 import java.io.IOException; 4 import java.io.InputStream; 5 6 import javax.xml.parsers.DocumentBuilder; 7 import javax.xml.parsers.DocumentBuilderFactory; 8 import javax.xml.parse

XML解析(二) SAX解析

XML解析之SAX解析: SAX解析器:SAXParser类同DOM一样也在javax.xml.parsers包下,此类的实例可以从 SAXParserFactory.newSAXParser() 方法获得. 注意SAXParser的parse()方法: parse(String uri, DefaultHandler dh),parse(File f, DefaultHandler dh)等都需要传递一个DefaultHandler的对象. 查看API帮助手册可知,SAX解析是事件驱动的,De

Java解析XML汇总(DOM/SAX/JDOM/DOM4j/XPath)

[目录] 一.[基础知识——扫盲] 二.[DOM.SAX.JDOM.DOM4j简单使用介绍] 三.[性能测试] 四.[对比] 五.[小插曲XPath] 六.[补充] 关键字:Java解析xml.解析xml四种方法.DOM.SAX.JDOM.DOM4j.XPath [引言] 目前在Java中用于解析XML的技术很多,主流的有DOM.SAX.JDOM.DOM4j,下文主要介绍这4种解析XML文档技术的使用.优缺点及性能测试. 一.[基础知识——扫盲] sax.dom是两种对xml文档进行解析的方法(

XML 解析---dom解析和sax解析

目前XML解析的方法主要用两种: 1.dom解析:(Document Object Model,即文档对象模型)是W3C组织推荐的解析XML的一种方式. 使用dom解析XML文档,该解析器会先把XML文档加载到内存中,生成该XML文档对应的document对象,然后把XML文档中的各个标签元素变成相应的Element对象,文本会变成Text对象,属性会变成Attribute对象,并按这些标签.文本.属性在XML文档中的关系保存这些对象的关系. 缺点:消耗内存,所以使用dom解析XML文档时不能解

几种常见的xml解析方式 SAX,DOM,PULL以android为例

准备工作 首先是一个person.xml文件 <?xml version="1.0" encoding="UTF-8"?> <persons> <person id="18"> <name>allen</name> <age>36</age> </person> <person id="28"> <name>

XML解析---DOM方式

XML解析方法分为两种:DOM方式和SAX方式 DOM:Document Object Model,文档对象模型.这种方式是W3C推荐处理XML的一种方式 SAX:Simple API for XML.该方式不是官方标准,属于开源社区XML-DEV XML解析开发包 JAXP:SUN公司推出的解析标准实现 Dom4J:开源组织推出的解析开发包 JDOM:同上 JAXP:(Java API for XML Processing)开发包是JavaSE的一部分,它由以下几个包及其子包组成 org.w3

Android中XML解析-Dom解析

Android中需要解析服务器端传过来的数据,由于XML是与平台无关的特性,被广泛运用于数据通信中,有的时候需要解析xml数据,格式有三种方式,分别是DOM.SAX以及PULL三种方式,本文就简单以Dom解析为例,解析XML, DOM方式解析xml是先把xml文档都读到内存中,然后再用DOM API来访问树形结构,并获取数据的,但是这样一来,如果xml文件很大,手机CPU处理能力比PC差,因此在处理效率方面就相对差了,使用Dom解析就不是太合适了. 基础维护 首先下assets目录下新建一个Bo

【Java】XML解析之SAX

SAX介绍 SAX是一种事件驱动的流式XML文件处理方式,区别与DOM方式的是不需要在内存中建一棵DOM树,而是根据读取XML时遇到的标签事件来顺序处理,因此具有速度快,内存占用上的优点. XML生成 代码如下: 1 package com.test.sax; 2 3 import javax.xml.transform.OutputKeys; 4 import javax.xml.transform.Result; 5 import javax.xml.transform.Transforme