读取XML文件内容

时间:2023-03-31 10:26:13

myeclipse中类的格式

读取XML文件内容
上面中的RunMain.java为程序执行的入口,JdbcUtil.java为实体类,XmlDocumentUtil.java执行解释xml文件与获取里面的属性,程序所需要导入的包为dom4j-1.6.1.jar与jaxen-1.1-beta-6.jar,jdbc.cfg.xml文件为需解释的xml文件
此程序下载

jdbc.cfg.xml

<?xml version="1.0" encoding="UTF-8"?>
<jdbc-configurat5ion>
<jdbc-properties>
<driverClass>com.mysql.jdbc.Driver</driverClass>
<url>jdbc:mysql://192.168.0.254:3306/haiyin</url>
<username>root</username>
<password>root</password>
</jdbc-properties>
</jdbc-configurat5ion>

RunMain.java

package main;
import util.XmlDocumentUtil;
/**
* 程序运行入口-设定xml文件名后调用程序
* @author CccccYj
*/
public class RunMain {
public static void main(String[] args) {
String FILE_PATH = "config/jdbc.cfg.xml";
new XmlDocumentUtil(FILE_PATH);
}
}

RunMain首先定义文件的路径FILE_PATH,然后以此路径调用XmlDocumentUtil.java文件的有参构造函数进行执行XmlDocumentUtil.java类。

JdbcUtil.java

package pojo;
/**
* jdbc-实体类
* @author CccccYj
*
*/
public class JdbcUtil {
/** 数据库驱动 */
private String driverClass;
/** 数据库连接字段 */
private String url;
/** 用户名 */
private String username;
/** 用户密码 */
private String password;
public String getDriverClass() {
return driverClass;
}
public void setDriverClass(String driverClass) {
this.driverClass = driverClass;
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}

实体类,对应xml文件里面的属性。

XmlDocumentUtil.java

package util;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
import pojo.JdbcUtil;
/**
* 获取xml文件与里面的properties属性
* @author CccccYj
*
*/
public class XmlDocumentUtil {
JdbcUtil jdbcUtil = new JdbcUtil();
/** 获取xml文件 */
public XmlDocumentUtil(String FILE_PATH) {
SAXReader saxReader = new SAXReader();
try {
Document doc = saxReader.read(FILE_PATH);
jdbcProperties(doc);
} catch (DocumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
/** 获取xml文件中的properties属性 */
private void jdbcProperties(Document doc){
Element driverClass = (Element) doc
.selectObject("/jdbc-configurat5ion/jdbc-properties/driverClass");
jdbcUtil.setDriverClass(driverClass.getStringValue());
System.out.println("FILE_PATH:"+doc.selectObject("/jdbc-configurat5ion"));
System.out.println("driverClass:"+jdbcUtil.getDriverClass());
}
}

saxReader.read(String file)方法读取xml文件,此时是dom4j-1.6.1.jar包在起作用。
.selectObject方法进行对xml文件里面属性的读取,注意到jdbc-configurat5ion了没有?就是说xml里面的属性名可以自定义的。