<%@page contentType="text/html;charset=GBK"%>
<!-- 作者:hekanhui write in 2006的最后一天 -->
<HTML>
<HEAD>
<TITLE>用JDOM实现数据库到XML的转换</TITLE>
</HEAD>
<BODY>
<%@page import="org.jdom.*"%>
<%@page import="org.jdom.output.*"%>
<%@page import="java.*"%>
<%@page import="java.sql.*"%>
<%@ page import="java.io.*"%>
<%
String sql = null;
ResultSet rs = null;
Document document = new Document(new Element("PUSH统计"));//创建文档
int count = 1;
String sElement = "用户";
try {
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
String xDb_Conn_Str = "jdbc:oracle:thin:@192.168.14.27:1521:nh";
//载入jdbc odbc的驱动程序
String user = "mlp";
String password = "a";
Connection conn = DriverManager.getConnection(xDb_Conn_Str,
user, password); //连接数据库
Statement stmt = conn.createStatement(
ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_UPDATABLE);
sql = "select * from T_mlp_mpxxb where mph = '500'";
rs = stmt.executeQuery(sql);
ResultSetMetaData rsmd = rs.getMetaData(); //获取字段名
int numberOfColumns = rsmd.getColumnCount(); //获取字段数
while (rs.next()) {
sElement = "用户" + count;
Element element0 = new Element(sElement); //创建元素 生成JDOM树
document.getRootElement().addContent(element0);
for (int i = 1; i <= numberOfColumns; i++) {
String date = rs.getString(i); //代码转换
Element element = new Element(rsmd.getColumnName(i))
.setText(date);
element0.addContent(element);
}
count++;
}
rs.close();
} catch (SQLException e) {
if (rs != null)
rs.close();
e.printStackTrace();
}
//创建一个statement
XMLOutputter outp = new XMLOutputter();
outp.output(document, new FileOutputStream("c://TextXml.xml")); //输出XML文档
out.print("XML 文档生成完毕!");
%>
<a href="c://TestXml.xml">点击打开产生的XML文档 </a>
</BODY>
</HTML>