Java教程

99%的文章均为原创,转载请注明~~~~视频教程~~可以到www.rjpx.net 分享

JAVA操纵XML 实例讲解

JDBC开发中需要连接到不同的数据库,利用XML文件保存不同类型数据库的连接参数,并使用统一的程序解析XML以取得相应的连接参数。

<<Db.xml>>
<?xml version="1.0" encoding="UTF-8"?>
<DBS>
	<DB>
		<type>Oracle</type>
		<driver>oracle.jdbc.driver.OracleDriver</driver>
		<url>jdbc:oracle:thin:@localhost:1521:goudan</url>
		<user>pubuser1</user>
		<password>11111111</password>
	</DB>
	<DB>
		<type>mysql</type>
		<driver>org.git.mm.mysql.Driver</driver>
		<url>jdbc:mysql://localhost:3306/BookDB</url>
		<user>pubuser2</user>
		<password>11111111</password>
	</DB>
	<DB>
		<type>sqlserver</type>		<driver>com.microsoft.jdbc.sqlserver.SQLServerDriver</driver>
		<url>jdbc:Microsoft:sqlserver://127.0.0.1:1433</url>
		<user>pubuser3</user>
		<password>11111111</password>
	</DB>
</DBS>
<<DBTest.java>>
package test.xml;
import java.io.IOException;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
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 DBTest {
	public DBTest(String type) {
		// this.type = type ;
		DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
		try {
			DocumentBuilder db = dbf.newDocumentBuilder();// 创建解析器
			Document doc = db.parse("Db.xml");// 解析地址
			NodeList n1 = doc.getElementsByTagName("DB");// 得到含有DB标签的一个列表
			for (int i = 0; i < n1.getLength(); i++) {
				Element myNode = (Element) n1.item(i);// 通过item方法获得每个对象
				if (myNode.getElementsByTagName("type").item(0).getFirstChild()
						.getNodeValue().equals(type)) {

					String driver = myNode.getElementsByTagName("driver").item(
							0).getFirstChild().getNodeValue();
					String url = myNode.getElementsByTagName("url").item(0)
							.getFirstChild().getNodeValue();
					String user = myNode.getElementsByTagName("user").item(0)
							.getFirstChild().getNodeValue();
					String password = myNode.getElementsByTagName("password")
							.item(0).getFirstChild().getNodeValue();
					System.out.println(driver + " " + url + " " + user + " "
							+ password);
					break;
				}
			}
		} catch (ParserConfigurationException e) {
			e.printStackTrace();
		} catch (SAXException e) {
			e.printStackTrace();
		} catch (IOException e) {

			e.printStackTrace();
		}
	}

	public static void main(String[] rag) {
		DBTest dbt1 = new DBTest("Oracle");
		DBTest dbt2 = new DBTest("mysql");
		DBTest dbt3 = new DBTest("sqlserver");
	}
}


阅读更多
个人分类: Java
想对作者说点什么? 我来说一句

xmlJAVA解析与格式定义

2008年11月05日 89KB 下载

javajava操作sqlserver 数据库实例

2017年12月01日 543KB 下载

C#操纵XML实例

2009年03月18日 11KB 下载

java解析xml实例

2010年02月23日 257KB 下载

xml精讲帮助文档 两个打包

2009年07月28日 2.94MB 下载

没有更多推荐了,返回首页

不良信息举报

JAVA操纵XML 实例讲解

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭