从数据库中读取记录集到平面式XML

文章作者 100test 发表时间 2007:09:15 12:08:11
来源 100Test.Com百考试题网


从数据库中读取记录集到平面式XML

package jing.xml.

/**
*

Title: 从数据库中读取记录集到平面式XML文件


*

Description:


*

Copyright: Copyright (c) 2004


*

Company:


* @author 欧朝敬 13873195792
* @version 1.0
*/

//将数据库表输出为XML文档
import org.jdom.*.
import org.jdom.output.*.
import Java.sql.*.
import java.io.*.

public class databasetoxml {
public databasetoxml() {
}

public static void main(String[] args) throws Exception {
Class.forName("Oracle.JDBC.driver.OracleDriver").newInstance().
String url = "jdbc:oracle:thin:@192.168.128.250:1521:sample".
Connection conn = DriverManager.getConnection(url, "scott", "tiger").
PreparedStatement pstmt = conn.prepareStatement(
"0select * from company order by cid",
ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE).
ResultSet rs = pstmt.executeQuery().
Document document = new Document(new Element("ROOT")). //创建文档ROOT元素
ResultSetMetaData rmd = rs.getMetaData().
int colcount = rmd.getColumnCount().
Element elemnetcol = new Element("COLTYPE").
for (int i = 1. i <= colcount. i ) { //列属性
elemnetcol.setAttribute(rmd.getColumnName(i),
rmd.getColumnTypeName(i)).
}
document.getRootElement().addContent(elemnetcol).

while (rs.next()) { //不确定表生成XML记录
Element element0 = new Element("ROW").
for (int i = 1. i <= colcount. i ) {
element0.setAttribute(rmd.getColumnName(i),(rs.getString(i)==null?"":rs.getString(i))).
}
document.getRootElement().addContent(element0).
}
rs.close().
pstmt.close().
conn.close().
XMLOutputter outp = new XMLOutputter(Format.getPrettyFormat()). //格式华输出,产生缩进和换行

Format format = outp.getFormat().
format.setEncoding("GB2312"). //设置语言
format.setExpandEmptyElements(true). //设置输出空元素为格式
outp.setFormat(format).

outp.output(document, new FileOutputStream("company.xml")). //输出XML文档
System.out.print("XML 文档生成完毕!").
}
}


相关文章


数据库中取当前日期的各种方法
使用servlet和JavaBean访问MySQL
一种高效的javabea分页ForSqlServer
被osworkflow的数据库配置(mysql)困住了
从数据库中读取记录集到平面式XML
tomcat5_tomcat4中配置数据库(oracle)连接池
从数据库中读出图片并显示的示例代码
从数据库中读取记录集到层叠式XML
一种不使用数据源用java直接连接数据源的方法
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛