`

Java读取XML配置文件详细总结(dom4j方式)

阅读更多
最初的想法是不把mysql的连接参数写到程序中,因为每次要修改参数总是很麻烦,于是想找到一种能够方便修改的方式,后来就找到了通过XML文件存储程序参数的方法。本文中使用dom4j读取xml文件



XMLReader类
import java.io.File;
import java.util.Iterator;
import org.dom4j.Document;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;

/**
 * 
 * @author Martin3000
 * 
 */
public class XMLReader {
	// 配置文件名
	private static String filename = "conf.xml";
	private static Config config;

	/**
	 * 从配置文件中读取参数并保存到Config类中,
	 * 很多时候程序中会多次使用到配置中的参数, 
	 * 于是设置成静态方法,读取一次后就一直保存其中的参数,
	 * 不再反复读取
	 * 
	 * @return
	 */
	public static Config loadconfig() {
		if (config == null)
			config = getconfig();
		return config;
	}

	private static Config getconfig() {
		Config config = new Config();
		try {
			File f = new File(filename);
			if (!f.exists()) {
				System.out.println("  Error : Config file doesn't exist!");
				System.exit(1);
			}
			SAXReader reader = new SAXReader();
			Document doc;
			doc = reader.read(f);
			Element root = doc.getRootElement();
			Element data;
			Iterator<?> itr = root.elementIterator("VALUE");
			data = (Element) itr.next();

			config.server = data.elementText("server").trim();
			config.user = data.elementText("user").trim();
			config.pass = data.elementText("pass").trim();
			config.port = data.elementText("port").trim();
			config.dbname = data.elementText("dbname").trim();

		} catch (Exception ex) {
			System.out.println("Error : " + ex.toString());
		}
		return config;

	}
}

Config类

读取文件中的配置到Config类中,这里主要是Mysql的连接配置
/**
 * 
 * @author Marin3000
 *
 */
public class Config {

	public String server;
	public String user;
	public String pass;
	public String port;
	public String dbname;

	public String getConnString() {

		String connString = "jdbc:mysql://" + server + ":" + port + "/"
				+ dbname + "?user=" + user + "&password=" + pass
				+ "&useUnicode=true&characterEncoding=UTF-8";
		return connString;

	}

}

XML文格式(conf.xml)
<?xml version="1.0" encoding="UTF-8"?>
<CONFIG>
	<VALUE>
		<!-- mysql连接设置 -->
		<server>127.0.0.1</server>
		<dbname>users</dbname>
		<user>root</user>
		<pass>pass</pass>
		<port>3306</port>
	</VALUE>
</CONFIG> 

好了 再也不会有在源程序里修改配置的烦恼了,附件里有dom4j的jar包下载
2
0
分享到:
评论
2 楼 云卷云舒灬 2016-08-02  
1 楼 longying2008 2012-12-04  
个人感觉可以在data = (Element) itr.next()处加个try...catch语句。

相关推荐

    Java解析xml配置文件,DOM4J解析xml配置文件,提供使用文档和源码下载

    总结,DOM4J为Java开发者提供了强大的XML处理能力,无论是解析、创建还是修改XML配置文件,都能轻松应对。通过学习和掌握DOM4J,你将能够更好地管理和维护基于XML配置的Java项目。请务必参考提供的文档和源码,以便...

    dom4j读写xml文档实例

    总结,DOM4J是Java开发中处理XML文档的强大工具,它的易用性和灵活性使得XML操作变得简单。无论是读取、写入还是搜索XML,DOM4J都能提供高效的方法。在实际项目中,结合源码阅读和使用DOM4J工具,能够更深入地理解和...

    JAVA高手解析XML配置文件的读取操作.pdf

    本文主要讲解了 Java 中如何读取 XML 配置文件,并对 XML 解析器进行了分类,分别介绍了 DOM 和 SAX 两种解析方式的特点和使用场景,并提供了一个使用 SAX 解析器读取 XML 配置文件的示例程序。 在 Java 开发中,...

    dom4j 解析(读取) xml 节点数据

    DOM4J是一个强大的Java库,专门用于处理XML文档。它提供了简单而直观的方式来解析、创建、修改和操作XML数据。在本教程中,我们将深入探讨如何使用DOM4J...在实际项目中,DOM4J常被用于数据交换、配置文件读写等场景。

    使用Java读取XML配置文件

    使用 Java 读取 XML 配置文件 Java 语言和 XML 技术可以说是黄金组合,网上已经有很多文章介绍 XML 在电子商务中的数据交换的作用。但是在平时系统开发中,我们不一定都用到数据交换,是否无法使用 XML?当然不是...

    dom4j_XML.rar_DOM4J_dom4j xml java_java xml_读写xml

    7. **bis和dom4j读写xml文件.files**:这两个文件可能是辅助资源,如样式表或配置文件,用于增强HTML示例的展示效果,或者包含与DOM4J操作XML相关的其他信息。 掌握DOM4J对于Java开发者来说是非常有用的,因为它能...

    Dom4j解析配置文件与xml小例子

    本篇将通过一个实际的例子来探讨如何使用Dom4j解析XML配置文件。 首先,我们需要了解DOM4J的基本概念。DOM(Document Object Model)是一种用于表示XML或HTML文档的标准模型,而Dom4j是基于DOM的,但它比标准的DOM...

    java中dom4j读写XML

    Java中的DOM4J库是一个非常流行的、开源的Java XML API,它提供了强大的XML处理功能,包括XML的读取、创建、修改以及写入。DOM4J是基于DOM模型的,但相比标准的Java DOM,它提供了更加简洁和高效的API,使得开发者在...

    读取XML文件的四种方法

    优点:DOM4J方法提供了高效的XML解析方式,支持大型XML文件的读取。 缺点:DOM4J方法需要将整个XML文档加载到内存中,因此对于大型XML文件可能会出现性能问题。 JDOM JDOM是基于Java的XML解析器,它提供了高效、...

    DOM4J jar包 xml解析 所有的dom4j-1.6.1 dom4j-2.0.2 dom4j-2.1.1包 导入直接使用

    8. **与Spring框架集成**:在Spring框架中,DOM4J常用于配置文件的解析,例如Spring的bean定义XML文件。 DOM4J的版本迭代带来了许多改进和新特性,例如从1.6.1到2.1.1的过程中,可能包含了性能优化、API调整、错误...

    dom4j解析xml详解

    - **配置文件解析**: 许多应用使用XML作为配置文件的格式,DOM4J可以方便地读取和更新这些配置信息。 - **Web服务**: 在SOAP等协议中,XML是常用的数据传输格式,DOM4J能够帮助构建和解析这些XML消息。 - **文档生成...

    dom4j是一个Java的XML API,是jdom的升级品,用来读写XML文件的。下载地址 .txt

    dom4j是一个Java的XML API,是jdom的升级品,用来读写XML文件的。dom4j是一个十分优秀的JavaXML API,具有性能优异、功能强大和极其易使用的特点,它的性能超过sun公司官方的dom技术,同时它也是一个开放源代码的...

    java dom4j jar包+dom4j API

    此外,DOM4J也可以在服务端生成动态XML配置文件,如Spring的配置文件,或者用于生成RSS、Atom等XML格式的Feed。 **DOM4J-API.zip**:这个压缩包可能包含了DOM4J库的API文档,开发者可以从中查找具体的类、方法和...

    使用dom4j 和本地dom 解析xml 文件

    总结来说,DOM解析是标准的XML处理方式,而DOM4J是其增强版,提供了更多的特性。在Java开发中,根据XML文件的大小和处理需求,可以选择DOM4J以获得更好的性能和便利性。理解并熟练掌握这两种解析技术,对于处理XML...

    Java操作xml文件工具包dom4j源码

    8. **读写XML文件**:DOM4J提供了读取XML文件到`Document`对象,以及将`Document`对象写回XML文件的方法。 9. **修改XML**:通过DOM4J,你可以添加、删除或修改XML元素、属性和文本内容,实现XML文档的动态更新。 ...

    JAVA项目数据库连接XML配置文件.docx

    JAVA项目数据库连接XML配置文件 在 Java 项目中,数据库连接的配置是一个非常重要的步骤,为了方便用户配置数据库,使用 XML 配置文件可以灵活地修改数据连接。本文将详细介绍如何使用 XML 配置文件来连接数据库。 ...

    dom4j关于xml读写的例子里面还有dom4j的jar包

    除了基本的读写操作,DOM4J还支持XPath查询,这是一种强大的定位XML元素的方式。通过`XPathExpression`和`XPathFactory`,你可以编写XPath表达式来查找XML文档中的特定节点。例如,`//elementName`可以匹配所有名为`...

    dom4j-2.1.3.zip

    在实际开发中,DOM4J常用于读取XML配置文件、解析XML数据、生成XML报告等场景。例如,通过`Document`对象读取XML文件,然后使用`Element`和`XPath`来获取或修改数据。同时,DOM4J还提供了`Writer`接口,可以将XML...

    JAVA XML dom4j-1.6.1

    - 在Spring框架中,dom4j被广泛用于配置文件的解析,如XML格式的bean配置文件。Spring使用dom4j解析XML,创建并初始化Bean实例。 9. **性能与效率** - 虽然DOM4J是基于DOM的,但它对DOM进行了优化,减少了内存...

Global site tag (gtag.js) - Google Analytics