(一)Java解析XML:XML基本概念的理解

JDK中的org.w3c.dom包提供了处理XML的API。要想利用此包中的API来处理XML文件,首先需要理解如下的这些概念:

(1)Node:是整个文档对象模型的主要数据类型,它表示该文档树中的单个节点,根据 DOM的定义,XML 文档中的每个成分都是一个节点,比如:

<!-- comment -->

<service id="cretae">create service</service>

这里的service(元素节点)、id(属性节点)、"create service"(文本节点)都是节点,甚至于注释"comment"都是一个节点(注释节点)。

JDK中的Node接口提供了一些常量,用于判断节点的类型:

ATTRIBUTE_NODE :属性节点
COMMENT_NODE :注释节点
TEXT_NODE :文本节点
ELEMENT_NODE:元素节点
XML DOM 把 XML 文档视为一种树结构,这种树结构被称为节点树。以下面的xml文件为例:

<service id="cretae">
    <class path="c:\\"></class>
    <source path="d:\\"></source>
</service>
class节点和source节点是service节点的子节点,service节点是class节点和source节点的父节点,而calss节点和source节点之间是兄弟关系。

(2)Element:Element接口表示 XML 文档中的一个元素,而每个 XML 标签都是是一个元素节点,比如:

<service id="cretae"></service>

这里的service就是一个Element。在JDK中,Element接口继承自Node接口。


(3)Document:Document接口表示整个XML 文档,它是文档树的根,提供对文档数据的基本访问。

解析XML的第一步就是要将XML文件转换为Document对象,首先通过DocumentBuilderFactory获取生成DOM对象树的解析器。

                final DocumentBuilderFactory factory = DocumentBuilderFactory
		        .newInstance();
		try
		{
			final DocumentBuilder builder = factory.newDocumentBuilder();
			logger.debug("create builder success.");
			Document doc = builder.parse(new File(this.path));
			logger.debug("parse xml file success");
		}
		catch (final ParserConfigurationException e)
		{
			logger.error("Constructor document builder error : " + e);
		}
		catch (final SAXException e)
		{
			logger.error("parse file error : " + e);
		}
		catch (final IOException e)
		{
			logger.error("parse file error : " + e);
		}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值