1. DOM(Document Object Model)?生成和解析XML文档。由W3C提供的接口,它将整个XML文档读入内存,构建一个DOM树来对各个节点(Node)进行操作。
2. SAX(Simple API for XML)?生成和解析XML文档。SAX不用将整个文档加载到内存,基于事件驱动的API(Observer模式),用户只需要注册自己感兴趣的事件即可。
3. DOM4J生成和解析XML文档。dom4j是目前在xml解析方面是最优秀的(Hibernate、Sun的JAXM也都使用dom4j来解析XML),它合并了许多超出基本 XML 文档表示的功能,包括集成的 XPath 支持、XML Schema 支持以及用于大文档或流化文档的基于事件的处理
4. JDOM生成和解析XML 。 JDOM与DOM非常类似,它是处理XML的纯JAVA API,API大量使用了Collections类,且JDOM仅使用具体类而不使用接口。
1、jdom生成和解析xml
为减少dom、sax的编码量,出现了jdom
优点:20-80原则,极大减少了代码量。
使用场合:要实现的功能简单,如解析、创建等,但在底层,jdom还是使用sax(最常用)、dom、xanan文档。
2、sax生成和解析xml文档
为解决dom的问题,出现了sax,sax 事件驱动。当解析器发现元素开始、元素结束、文本、文档的开始或结束等时发送事件,程序员编写响应这些事件的代码,保存数据。
优点:不用事先调入整个文档,占用资源少。sax解析器代码比dom解析器代码小,适于applet下载。
缺点:不是持久的,事件过后若没保存数据,那么数据就丢了。无状态性,从事件中只能得到文本,但不知该文本属于哪个元素。
使用场合:applet。只需xml文档的少量内容,很少回头访问,机器内存少。
3、dom生成和解析xml文档
为xml文档的已解析版本定义了一组接口。解析器读入整个文档,然后构建一个驻留内存的树结构,然后代码就可以使用 dom 接口来操作这个树结构。
优点:整个文档树在内存中,便于操作,支持删除、修改、重新排列等多种功能。
缺点:将整个文档调入内存(包括无用的节点),浪费时间和空间。
使用场合:一旦解析了文档还需多次访问这些数据,硬件资源充足(内存、cpu)。
4、dom4j生成和解析xml文档
dom4j
是一个非常非常优秀的java xml
api,具有性能优异、功能强大和极端易用使用的特点,同时它也是一个开放源代码的软件。如今你可以看到越来越多的 java 软件都在使用 dom4j
来读写 xml,特别值得一提的是连 sun 的 jaxm 也在用 dom4j。
用户登录
还没有账号?立即注册
用户注册
投稿取消
文章分类: |
|
还能输入300字
上传中....