您的位置:首页 > 数据库 > Oracle

DRP项目(七)----XML的四种解析器之DOM解析XML

2012-01-15 16:53 375 查看
 
 我的xml文件代码:文件名:sys-config.xml
<?xml version="1.0" encoding="UTF-8"?>
<config>
<db-info>
<driver-name>oracle.jdbc.driver.OracleDriver</driver-name>
<url>jdbc:oracle:thin:@192.168.24.181:1521:BJPOWERNODE</url>
<user-name>drp1</user-name>
<password>drp1</password>
</db-info>
</config>

首先声明一下我在这只写读取过程中的简要原理,至于加上单例模式,这个自己可以加上,但是我写的是实现解析xml的原理。
这里只得到<driver-name>中的东西
DOM解析XML文档
package com.bjpowernode.drp.util;
/**
* DOM实现读取配置文件
*
* */
import java.io.File;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.NodeList;

public class testXML {
public  static void main(String args[]) {
try {
// 创建一个工厂实例
DocumentBuilderFactory factory = DocumentBuilderFactory
.newInstance();
// 新建一个文档模板
DocumentBuilder builder = factory.newDocumentBuilder();
// 根据指定路径,创建一个文档对象
Document document = builder.parse(new File("E:\\软件学习\\视频及相关学习\\2.动力节点_王勇_Java项目视频_DRP完整版\\DRP\\DRP\\drp2.4\\src\\sys-config.xml"));
// 得到所有的文档内容,即得到文档的根节点
Element rootElement = document.getDocumentElement();
// 通过getElementsByTagName()方法,得到标签为author"的结点,
//返回的是一个结点对象集
NodeList list = rootElement.getElementsByTagName("db-info");
// 得到对象集中的第一个结点对象,该对象包括自己的子结点对象
Element authorElement = (Element) list.item(0);
// 打印出节点author中的id属性值
// System.out.println(authorElement.getAttribute("id"));
// 得到标签为firstname的结点集
NodeList nodeList = rootElement.getElementsByTagName("driver-name");
// 打印出其文本节点的属性值.由于firstname节点的子节点即为所需要的文本节点,
//所以当调用其子结点的值时会得到其文本属性值
System.out.println(nodeList.item(0).getChildNodes().item(0).getNodeValue());
} catch (Exception e) {
System.out.print(e.toString());
}
}
}


 
 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息