`

HelloWorld系列之——dom4j读xml文件

XML 
阅读更多
一、原理dom4j读xml的思想是,首先把要读的xml文件作为一个document(dom4j的类),这样外部的xml文件就转换成了dom4j可以操作的类型。然后找到document的根节点,在对根节点的字节点操作。在一个document中只有一个根节点,每个节点有0-n个子节点。此时的document节点就是一棵树,我们可以采用深度优先也可以采用广度优先来遍历整个树。我们对每一个节点我们可以获得它的名字和值。

public class DomUtil {
	public static Properties parseConfig(URL configName) {
		Document document = null;
		document = getDocument(configName);
		
		Properties configProperties = null;
		if(document != null) {
			configProperties = getProperties(document);
		}
		return configProperties;
	}
	
	//遍历ducument,把内容转换成一个Properties文件
	private static Properties getProperties(Document document) {
		Properties properties = new Properties();
		Element root = document.getRootElement();//获得根节点
		Iterator<Element> iter = root.elementIterator();
		//遍历所有根节点的子节点
		for(; iter.hasNext();) {
			Element element = iter.next();
			String name = element.getName();//获得节点名字
			String value = element.getText();//获得节点的值
			properties.put(name, value);
		}
		
		return properties;
	}

	//把指定的xml文件读入到程序,转换成一个document
	public static Document getDocument(URL configName) {
		SAXReader reader = new SAXReader();//读入器
		Document document = null;
		try {
			document = reader.read(configName);//读文件
		} catch (DocumentException e) {
			e.printStackTrace();
		}
		
		return document;
	}
}
分享到:
评论

相关推荐

    Tinyxml 源代码(VC6 & VS2005)

    简单地说,TinyXML解析一个XML文档并由此生成一个可读可修改可保存的文档对象模型(DOM)。 XML的意思是“可扩展标记语言“(eXtensible Markup Language)。它允许你创建你自己的文档标记。在为浏览器标记文档...

    java web 视频、电子书、源码(李兴华老师出版)

    9.2、永远的“HelloWorld”:第一个Servlet程序 9.3、Servlet与表单 9.4、Servlet生命周期 9.5、取得初始化配置信息 9.6、取得其他内置对象 9.6.1、取得HttpSession实例 9.6.2、取得ServletContext实例 ...

    李兴华 Java Web 开发实战经典_带源码_高清pdf 带书签 上

    9.2、永远的“HelloWorld”:第一个Servlet程序 9.3、Servlet与表单 9.4、Servlet生命周期 9.5、取得初始化配置信息 9.6、取得其他内置对象 9.6.1、取得HttpSession实例 9.6.2、取得ServletContext实例 9.7、...

    MLDN+李兴华+Java+Web开发实战经典.part3.rar )

    9.2、永远的“HelloWorld”:第一个Servlet程序 9.3、Servlet与表单 9.4、Servlet生命周期 9.5、取得初始化配置信息 9.6、取得其他内置对象 9.6.1、取得HttpSession实例 9.6.2、取得ServletContext实例 ...

    李兴华 java_web开发实战经典 源码 完整版收集共享

    9.2、永远的“HelloWorld”:第一个Servlet程序 9.3、Servlet与表单 9.4、Servlet生命周期 9.5、取得初始化配置信息 9.6、取得其他内置对象 9.6.1、取得HttpSession实例 9.6.2、取得ServletContext实例 9.7、...

    李兴华 Java Web 开发实战经典_带源码_高清pdf 带书签 下

    9.2、永远的“HelloWorld”:第一个Servlet程序 9.3、Servlet与表单 9.4、Servlet生命周期 9.5、取得初始化配置信息 9.6、取得其他内置对象 9.6.1、取得HttpSession实例 9.6.2、取得ServletContext实例 9.7、...

    李兴华Java Web开发实战经典.pdf (高清版) Part1

    9.2、永远的“HelloWorld”:第一个Servlet程序 9.3、Servlet与表单 9.4、Servlet生命周期 9.5、取得初始化配置信息 9.6、取得其他内置对象 9.6.1、取得HttpSession实例 9.6.2、取得ServletContext实例 ...

    李兴华 Java Web 开发实战经典 高清扫描版Part3

    9.2、永远的“HelloWorld”:第一个Servlet程序 9.3、Servlet与表单 9.4、Servlet生命周期 9.5、取得初始化配置信息 9.6、取得其他内置对象 9.6.1、取得HttpSession实例 9.6.2、取得ServletContext实例 9.7、...

    李兴华Java Web开发实战经典(高清版) Part2

    9.2、永远的“HelloWorld”:第一个Servlet程序 9.3、Servlet与表单 9.4、Servlet生命周期 9.5、取得初始化配置信息 9.6、取得其他内置对象 9.6.1、取得HttpSession实例 9.6.2、取得ServletContext实例 ...

    精通JS脚本之ExtJS框架.part2.rar

    3.2.3 编写HelloWorld.html 3.2.4 运行调试ExtJS 3.3 辅助开发 3.3.1 调试工具Firebug 3.3.2 开发利器Spket 第4章 ExtJS事件机制 4.1 设计模式——观察者模式 4.2 自定义事件 4.3 浏览器事件 4.4 ExtJS中的...

    精通JS脚本之ExtJS框架.part1.rar

    3.2.3 编写HelloWorld.html 3.2.4 运行调试ExtJS 3.3 辅助开发 3.3.1 调试工具Firebug 3.3.2 开发利器Spket 第4章 ExtJS事件机制 4.1 设计模式——观察者模式 4.2 自定义事件 4.3 浏览器事件 4.4 ExtJS中的...

Global site tag (gtag.js) - Google Analytics