TA的每日心情 | 开心 2021-3-12 23:18 |
---|
签到天数: 2 天 [LV.1]初来乍到
|
使用JDOM操作XML系列文章二 从数据库中读取记录集到平面式XML文件(请下载数据库和源程序)
package jing.xml;
/**
* <p>Title: 从数据库中读取记录集到平面式XML文件</p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2004</p>
* <p>Company: </p>
* @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("sun.jdbc.odbc.JdbcOdbcDriver");
- String url = "jdbc:odbc:jdom";
- Connection conn = DriverManager.getConnection(url);
- String sql="select * from company order by cid";
- Statement stmt = conn.createStatement();
- ResultSet rs = stmt.executeQuery(sql);
- 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()) {
- Element element0 = new Element("ROW");
- for (int i = 1; i <= colcount; i++) {
- element0.setAttribute(rmd.getColumnName(i),rs.getString(i));
- }
- document.getRootElement().addContent(element0);
- }
- rs.close();
- stmt.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 文档生成完毕!");
- }
- }
-
复制代码 产生的company.xml文件:
<?xml version="1.0" encoding="GB2312"?>
<ROOT>
<COLTYPE cid="INTEGER" cname="VARCHAR" descpt="VARCHAR" pid="INTEGER"></COLTYPE>
<ROW cid="1" cname="中南迈特" descpt="湖南省长沙市" pid="0"></ROW>
<ROW cid="2" cname="系统集成" descpt="各种系统集成" pid="1"></ROW>
<ROW cid="3" cname="软件开发" descpt="软件开发" pid="1"></ROW>
<ROW cid="6" cname="NetOA开发组" descpt="NetOA开发组" pid="3"></ROW>
<ROW cid="7" cname="王军" descpt="J2EE组王军" pid="5"></ROW>
<ROW cid="8" cname="湘红" descpt="J2EE组湘红" pid="5"></ROW>
<ROW cid="9" cname="Windows集成组" descpt="Windows系统集成" pid="2"></ROW>
<ROW cid="10" cname="Linux集成组" descpt="Linux相关系统集成" pid="2"></ROW>
</ROOT>
源码下载:http://file.javaxxz.com/2014/10/11/005912062.zip |
|