import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.FactoryConfigurationError;
import javax.xml.parsers.ParserConfigurationException;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;
public class ParseXml
{
/** 解析数据库信息的配置文件
* 返回配置文件中的信息列表
* @param args
* @see [类、类#方法、类#成员]
*/
public static List parseXml(File dbConfigXmlFile)
{
List dbConfList = new ArrayList();
try
{
Document doc = DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(dbConfigXmlFile);
NodeList nodes = doc.getElementsByTagName("local-tx-datasource");
NodeList subNodes = null;
Node tempNode = null;
String nodeValue = null;
String[] infos = null;
for(int i=0;i<nodes.getLength();i++)
{
tempNode = nodes.item(i);
if(tempNode instanceof Element)
{
tempNode = (Element)tempNode;
}
subNodes = tempNode.getChildNodes();
infos = new String[5];
for(int j =0;j<subNodes.getLength();j++)
{
tempNode = subNodes.item(j);
if(tempNode instanceof Element)
{
tempNode = (Element) tempNode;
nodeValue =tempNode.getFirstChild().getNodeValue();
if(tempNode.getNodeName().equals("connection-url"))
{
infos[0]=nodeValue;
}
if(tempNode.getNodeName().equals("driver-class"))
{
infos[1]=nodeValue;
}
if(tempNode.getNodeName().equals("user-name"))
{
infos[2]=nodeValue;
}
if(tempNode.getNodeName().equals("password"))
{
infos[3]=nodeValue;
}
if(tempNode.getNodeName().equals("isUse"))
{
infos[4]=nodeValue;
}
}
}
dbConfList.add(infos);
}
}
catch (SAXException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
catch (IOException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
catch (ParserConfigurationException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
catch (FactoryConfigurationError e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
return dbConfList;
}
}
分享到:
相关推荐
SQlite数据库工具 供比较两个SQLite数据库所用。
国产数据库 达梦数据库管理工具
数据库数据对比工具(MSSQL版)是针对MS SQL Server的一款小工具,可以针对两个数据进行表结构和...2、数据对比:如对比两个数据库中的某个表的数据差异,有差异的行会用颜色进行标记,可生成sql脚本进行两个库的同步。
数据库比较工具DataBaseTool3.0
小鸟数据库操作工具小鸟数据库操作工具小鸟数据库操作工具
数据库理工具谢玉超数据库理工具谢玉超数据库理工具谢玉超数据库理工具谢玉超数据库理工具谢玉超数据库理工具谢玉超数据库理工具谢玉超数据库理工具谢玉超数据库理工具谢玉超数据库理工具谢玉超数据库理工具谢玉超...
Red Gate数据库比较工具,方便好用
数据库工具数据库工具数据库工具数据库工具数据库工具数据库工具数据库工具
微信 数据库 打开工具 自行录入数据库密码
JAVA数据库小工具JAVA数据库小工具JAVA数据库小工具
GPH N11是一款基于Mysql数据库的管理工具,它支持多种操作系统平台,如Windows、Linux和MacOS等,能够提供简单易用、高效便捷的数据库管理平台。 该工具具备图形化管理界面,使用户可以更加直观地浏览、管理和编辑...
N11数据库模拟管理工具,真的挺好用的哦,你们也来试试吧
MSDE工具 简版数据库修改工具 MSDE工具 简版数据库修改工具
比Navicat好用强大的A5(数据库连接工具) 1、数据库客户端工具A5 sql 2、数据一览里可以根据注释直观的显示列明,可以通过表注释过滤表 3、可以画ER图 4、表过滤等
Access mdb数据库比较工具 找了半天没可用的,自己编写了一个。 SHA:C6F34AF7037C8848E006A626BB99B9216663DB65
access数据库转换工具access数据库转换工具access数据库转换工具
A5M2数据库管理工具,MySQL数据库管理工具,A5,A5M2,数据库设计,ER图
sql server 数据库比较工具,比较2个数据库表结构,视图,存储过程等
db2数据库连接工具,可以很方便的连接到db2数据库进行查询、删除、更新等sql操作
DbTools数据库管理工具,DbTools在线ACCESS/MSSQL数据库管理工具,但界面和操作挺方便的,可以在线对ACCESS或MSSQL2000数据库进行表、库的查看、添加、编辑、删除、运行查询等操作。