📄 dbparse.java
字号:
package com.wuliu.DBConnection;
import java.io.InputStream;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
/*
* XML文件解析类 void 2.12
*/
public class DBparse {
public static DataBase parseDbXML(){
//File file =new File("db.xml");
DataBase db=new DataBase();
try {
DocumentBuilderFactory factory = DocumentBuilderFactory
.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
//InputStream
//将给定输入源的内容解析为一个 XML 文档,并且返回一个新的 DOM Document 对象
//parse(File f)--parse(InputSource is)--parse(InputStream is, String systemId)--
//parse(String uri)将给定 URI 的内容解析为一个 XML 文档,并且返回一个新的 DOM Document 对象
Document doc = builder.parse(DBparse.load());
Element root = doc.getDocumentElement();
NodeList dbinfo = root.getChildNodes();// 返回节点集
for (int i = 0; i < dbinfo.getLength(); i++) {// 得到各节点的文本
Node child = dbinfo.item(i);
if (child.getNodeType() == Node.ELEMENT_NODE) {//确定为元素类型
if ("dburl".equals(child.getNodeName())) {
String dburl = child.getTextContent();
db.setDbUrl(dburl);
}
if ("dbuser".equals(child.getNodeName())) {
db.setDbUser(child.getTextContent());
}
if ("dbpwd".equals(child.getNodeName())) {
db.setDbPwd(child.getTextContent());
}
if ("dbdriver".equals(child.getNodeName())) {
db.setDbdriver(child.getTextContent());
}
}
}
} catch (Exception e) {
System.out.println("XML文件处理失败!");
e.printStackTrace();
}
return db;
}
@SuppressWarnings("unchecked")
//解决xml文件路径问题
//类加载器,试图由类名称寻找文件在虚拟机运行时
public static InputStream load(){
Class cl = DBparse.class;
ClassLoader loader = cl.getClassLoader();
//getResourceAsStream返回读取指定资源的输入流
InputStream in = loader.getResourceAsStream("db.xml");
return in;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -