读取XML文件常用的有四种方式,W3C ,JDom ,Dom4j 等,这几种读取方式中,Jdom比Dom4j更简单,但是效率并没有Dom4j好,所以我们更多的采用Dom4j来读取Xml文件。
常见的这几种读取XML文件方法都是第三方开发的,对于XML文件的读取方式的API文档,我们只需简单了解就可以了,但是对于Sun公司发表的标准的J2EE以及J2SE的API,我们应该尽可能熟练的掌握。有事没事,你就读读这些文档,对你好处很大的。
XML的两种访问方式:(a)DOM是面向模型的,一次将XML文档加入内存,编程简单,适合小型文件的解析。(b)SAX是面向实践的,读一部分解析一部分,编程复杂一些,适合大型文件的解析。
/**
* 解析XMl文件
* @author CX
*
*/
public class xmlReader {
private static xmlReader instance=null;
private JdbcConfig jdbcConfig=null;
private xmlReader(){
try {
SAXReader reader=new SAXReader();
InputStream inputStream=Thread.currentThread().getContextClassLoader().getResourceAsStream("sys-config.xml");
Document doc=reader.read(inputStream);
Element driverNameElt=(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");
jdbcConfig=new JdbcConfig();
jdbcConfig.setDrivename(driverNameElt.getStringValue());
jdbcConfig.setUrl(urlElt.getStringValue());
jdbcConfig.setUsername(usernameElt.getStringValue());
jdbcConfig.setPassword(passwordElt.getStringValue());
} catch (DocumentException e) {
e.printStackTrace();
}
}
public static synchronized xmlReader createInstance(){
if(instance==null){
instance=new xmlReader();
}
return instance;
}
/**
* 返回JDBC相关配置
* @return
*/
public JdbcConfig getJdbcConfig(){
return jdbcConfig;
}
public static void main(String[] args){
JdbcConfig jdbcConfig=xmlReader.createInstance().getJdbcConfig();
System.out.println(jdbcConfig.getDrivename());
System.out.println(jdbcConfig.getUrl());
System.out.println(jdbcConfig.getUsername());
System.out.println(jdbcConfig.getPassword());
}
}
本文介绍使用Dom4j库解析XML文件的方法,并通过一个具体示例展示了如何读取和处理XML数据。该示例从XML文件中提取了数据库连接配置信息。

被折叠的 条评论
为什么被折叠?



