java吧 关注:1,257,866贴子:12,752,492
  • 0回复贴,共1

dom4j 读取xml

只看楼主收藏回复

今晚的结果,以下是sys-config.xml文件内容

以下是内容
package com.hbyxhh.drp.util;
import java.io.InputStream;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
/**
* 采用单例模式解析sys-config.xml文件
* @author admin
*
*/
public class XmlConfigReader {
//饿汉式(预先加载)
/*
private static XmlConfigReader instance = new XmlConfigReader();
private XmlConfigReader() {
}
public static XmlConfigReader getInstance() {
return instance;
}*/
//懒汉式(延迟加载lazy)
private static XmlConfigReader instance = null;
/**
* 保存jdbc相关信息
*/
private JdbcConfig jdbcConfig = new JdbcConfig();
private XmlConfigReader() {
/**
* 读取xml文件
*/
SAXReader reader = new SAXReader();
InputStream in = Thread.currentThread().getContextClassLoader().getResourceAsStream("sys-config.xml");
try {
Document doc = reader.read(in);
/**
* 取得jdbc相关信息
*/
Element dirvateNameElt = (Element) doc.selectObject("/config/db-info/driver-name");
Element urlElt = (Element) doc.selectObject("/config/db-info/url");
Element usernameElt = (Element) doc.selectObject("/config/db-info/user-name");
Element passwordElt = (Element) doc.selectObject("/config/db-info/password");
/**
* 设置jdbc相关配置
*/
jdbcConfig.setDrivateName(dirvateNameElt.getStringValue());
jdbcConfig.setUrl(urlElt.getStringValue());
jdbcConfig.setUsername(usernameElt.getStringValue());
jdbcConfig.setPassword(passwordElt.getStringValue());
// TODO Auto-generated catch block
} catch (DocumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static synchronized XmlConfigReader getInstance() {
if (instance == null) {
instance = new XmlConfigReader();
}
return instance;
}
/**
* 返回jdbc相关配置
* @return
*/
public JdbcConfig getJdbcConfig() {
return jdbcConfig;
}
public static void main(String[] args ) {
JdbcConfig jdbcConfig = XmlConfigReader.getInstance().getJdbcConfig();
System.out.println(jdbcConfig.getDrivateName());
System.out.println(jdbcConfig.getUrl());
System.out.println(jdbcConfig.getUsername());
System.out.println(jdbcConfig.getPassword());
}
}I


IP属地:湖北1楼2013-11-02 23:32回复