- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
课程名称:XML解析——JDOM
2、本课程预计讲解的知识点
* 掌握JDOM开发工具的使用及产生原理;
* 可以使用JDOM进行读取和写入的操作。
3、具体内容
在W3C本身提供的XML操作标准:DOM和SAX,但是从开发的角度来看,DOM和SAX本身是各有特点,那么DOM的特点是可以修改,但是不能读取大文件,而SAX的特点是可以读取大文件,但是本身是不能进行修改的。
所谓的JDOM=DOM的修改性+SAX的文件读取性。
JDOM本身是一个免费的开源组件,可以直接进行下载。
JDOM
JDOM是使用JAVA语言编写的用于读、写、操作XML的一套组件。可以直接从上下载JDOM的开发包。
直接将jdom.jar的包,拷贝到Tomcat目录下的lib文件夹中即可。
如果需要直接使用,则需要在classpath中进行配置。
JDOM的主要操作类
No. 类名称 描述 1 Document Document类定义了一个XML文件的各种操作,用户可以使用它所提供的方法类存取根元素几存取处理命令文件层次的相关信息。 2 DOMBuilder DOMBuilder类用来建立一个JDOM结构树。 3 Element Element类定义了一个XML元素的各种操作,用户可以通过它提供的方法得到元素的文字内容,属性值以及子节点。 4 Attribute Attribute类表示了一个XML文件元素中属性的各个操作。 5 XMLOuptter XMLOuptter类会将一个JDOM结构树格式化为一个XML文件,并且以输出流的方式加以输出。
DOM操作中要想取得Document本身是一件很麻烦的事情,需要通过DocumentBuildFactory,Document,而且在解析的操作中,还需要处理文字节点问题,还需要处理子节点问题,非常麻烦,而JDOM在这一点上就变得非常的容易了。
下面直接通过JDOM输出一个XML文件,观察与之前的DOM操作的区别。
package org.gxb.xml.jdom;
import java.io.*;
import org.jdom.*;
import org.jdom.output.*;
public class WriteXML{
public static void main(String[] args)throws Exception{
//定义属性
Element addresslist=new Element(addresslist);
Element linkman=new Element(linkman);
Element name=new Element(name);
Element email=new Element(email);
Attribute id=new Attribute(id,gxb);
Document doc=new Document(addresslist);
name.setText(高兴波);
email.setText(gaoxingbo0429@);
//将属性设置到元素当中
name.setAttribute(id);
//设置关系
linkman.addContent(name);
linkman.addContent(email);
addresslist.addContent(linkman);
XMLOutputter out=new XMLOutputter();
out.setFormat(out.getFormat().setEncoding(GBK));//设置编码
out.output(doc,new FileOutputStream(new File(D:+File.separator+sanDaKuangJia+File.separator+xmldemo+File.separator+jdom+File.separator+address.xml)));
}
} JDOM的输出操作比传统的DOM方便许多,而且更加直观,包括输出的时候都很容易了。
JDOM本身也支持SAX的特点,下面进行SAX进行解析的操作,当然,这种解析的操作是无法观察的。
下面解析次文件:
? ?xml version=1.0 encoding=GBK ?
addresslist
linkman
? name id=gxb高兴波/name
? emailgaoxingbo0429@/email
? /linkman
? /addresslist
package org.gxb.xml.jdom;
import java.io.*;
im
文档评论(0)