快速业务通道

使用Digester解析XML文档示例 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-22

使用Digester解析XML文档示例

时间:2010-12-14

一. 概述

解析XML文档方面有不少的方法,也有不少的工具包可用,这里介绍的是来自Apache Jakarta的Digester,使用其解析XML文件非常方便而不需要过多的关心底层的具体解析过程。

Digester最早出现在Struts中,后来随着Struts的发展以及其的公用性而被提到commens中独自立项,其底层实现的是SAX解析。当前版本为:1.5

二. 正文

1. 安装与配置

使用Digester需要如下几个软件包:

Digester ,BeanUtils, Collections, Commens-Logging,还有一个遵循SAX(Simple API for XML)2.0或JAXP(Java API for XML Parsing) 1.1规范的XML解析器,如Xerces。相关下载地址见附录。如果需要使用log4j做为日志输出,则亦请下载之。

将下载来的zip包解压,并将其中的jar文件拷贝到你的工程文件的lib目录中,并在工程classpath中包含上述jar文件的路径。

在您工程的类目录(如classes)新建一commons-logging.properties文件,内容为:

org.apache.commons.logging.Log=org.apache.commons.logging.impl.Log4Jlogger

这表明系统将使用log4j做为日志输出,再建一log4j.proerties文件,内容请参看log4j文档或其他参考资料。

2. XML文件

在工程目录下新建一个XML文件,示例使用module.xml,内容见下:

<?xml version="1.0" encoding="gb2312" ?> <quasar_module> <!--模块信息--> <module_info> <name>Skyhome</name> <description>the web site system of www.skyinn.org</description> <version>2.0.1</version> <author>l_wakler</author> <mail>walker@skyinn.org</mail> <update_time>2003-04-30</update_time> </module_info> <!--Action映射信息--> <action_mappings> <action name="home" requestPath="/Home" actionClass="org.skyinn.action.GlobalAction"> </action> <action name="forum" requestPath="/Forum" actionClass="org.skyinn.action.ForumAction"> </action> </action_mappings> </quasar_module>

使用Digester解析XML文档示例(2)

时间:2010-12-14

3. 解析XML文档

Digester的使用相当简单,请参看如下的SampleDigester类中的注释,这里不再拗述:

/*============================================================ * Copyright:www.skyinn.org (c) 2002 - 2003 All rights reserved. * File:org.skyinn.quasar.config.SampleDigester * Inculde:SampleDigester * Modify Records * Date Author Content * ============================================================= * 2003-5-1 walker create class * ============================================================*/ package org.skyinn.quasar.config; import org.apache.commons.digester.Digester; import org.xml.sax.SAXException; import org.skyinn.quasar.action.ActionMapping; import java.io.IOException; /** * Digester解析XML示例程序。 * <p> * @author walker(walker@skyinn.org) * <p> * <strong>参考文献:</strong><p> * <a href="http://www.onjava.com/pub/a/onjava/2002/10/23/digester.html" target="_blank">Learning and Using Jakarta Digester</a><p> * <a href="http://developer.ccidnet.com/pub/disp/Article?columnID=340&a

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号