您的位置:首页 > 编程语言 > Java开发

读取数据库中的数据到xml  java

2013-10-30 11:52 405 查看
第一步下载jar包
crimson.jar

第二步()

注意sql 语句 以及生成位置 本单元测试生成在src下

package com.test.xml;

import org.w3c.dom.Document;

import org.w3c.dom.Element;

import org.apache.crimson.tree.XmlDocument;

import javax.xml.parsers.DocumentBuilderFactory;

import javax.xml.parsers.DocumentBuilder;

import javax.xml.parsers.ParserConfigurationException;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.Statement;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.io.File;

import java.io.FileOutputStream;

import java.io.IOException;

import java.io.FileNotFoundException;

import java.io.IOException;

import org.xml.sax.SAXException;

public class schemeXml

{

static Connection conn=null;

static String sql;

public static void main(String[] args)

{

try

{   //链接数据库,取得数据

  
//Class.forName("oracle.jdbc.driver.OracleDriver");//oracle数据库

Class.forName("com.mysql.jdbc.Driver");//mysql数据库

conn=DriverManager.getConnection("jdbc:mysql://192.168.1.109/cpsad?user=root&password=admin&useUnicode=true&characterEncoding=UTF-8");

   Statement
st=conn.createStatement();

   ResultSet
rs=st.executeQuery("select * from user");

 

   DocumentBuilderFactory
factory=DocumentBuilderFactory.newInstance();

   DocumentBuilder
builder=factory.newDocumentBuilder();

   Document
doc=builder.newDocument();

 

   Element
comp=doc.createElement_x_x("COMP");

 

   while(rs.next())

   {

    Element
person=doc.createElement_x_x("PERSON");

  

    Element
deptno=doc.createElement_x_x("DEPTNO");

   
deptno.a(doc.createTextNode(String.valueOf(rs.getInt(1))));

   
person.a(deptno);

  

    Element
dname=doc.createElement_x_x("DNAME");

   
dname.a(doc.createTextNode(new
schemeXml().xmlReplace(rs.getString(2))));

   
person.a(dname);

  

    Element
loc=doc.createElement_x_x("LOC");

   
loc.a(doc.createTextNode(new
schemeXml().xmlReplace(rs.getString(3))));

   
person.a(loc);

   
comp.a(person);

   }

   rs.close();

   st.close();

   conn.close();

 

   doc.a(comp);

 

   ((XmlDocument)doc).write(new
FileOutputStream("src/dept.xml"));

 

  
System.out.println("操作成功!!!");

}catch(ClassNotFoundException e)

{

   e.printStackTrace();

}catch(SQLException e1)

{

   e1.printStackTrace();

}catch(ParserConfigurationException e2)

{

   e2.printStackTrace();

}catch(FileNotFoundException e3)

{

   e3.printStackTrace();

}catch(IOException e4)

{

   e4.printStackTrace();

}

}

public String xmlReplace(String value){

  
System.out.println("value---old"+value);

  
//value=value.replace("&",
"&");

//  
value=value.replace("<",
"<");

//  
value=value.replace(">",
">");

//   value=value.replace("'",
"'");

   value=value.replace(
"<","<");

   value=value.replace(
">",">");

   value=value.replace(
"'","'");

// value.replace("""", """);

  
System.out.println("value---new"+value);

    return
value;

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: