百度空间 | 百度首页 
 
查看文章
 
Java从数据库中读取数据写到xml文件_Java从数据库中读取数据生成xml文件
2009-08-21 17:35

Java从数据库中读取数据写到xml文件_Java从数据库中读取数据生成xml文件

操作xml需要的jar包:crimson.jar
package myXmlSQL;

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 test
{
static Connection conn=null;
static String sql;
//static String url="jdbc:oracle:oci8:@hydb";
static String url="jdbc:mysql://localhost:3306/test";
public static void main(String[] args)
{
try
{   //链接数据库,取得数据
   //Class.forName("oracle.jdbc.driver.OracleDriver");//oracle数据库
Class.forName("com.mysql.jdbc.Driver");//mysql数据库

conn=DriverManager.getConnection(url,"root","");
   Statement st=conn.createStatement();
   ResultSet rs=st.executeQuery("select * from users");
  
   DocumentBuilderFactory factory=DocumentBuilderFactory.newInstance();
   DocumentBuilder builder=factory.newDocumentBuilder();
   Document doc=builder.newDocument();
  
   Element comp=doc.createElement("COMP");
  
   while(rs.next())
   {
    Element person=doc.createElement("PERSON");
   
    Element deptno=doc.createElement("DEPTNO");
    deptno.appendChild(doc.createTextNode(String.valueOf(rs.getInt(1))));
    person.appendChild(deptno);
   
    Element dname=doc.createElement("DNAME");
    dname.appendChild(doc.createTextNode(new test().xmlReplace(rs.getString(2))));
    person.appendChild(dname);
   
    Element loc=doc.createElement("LOC");
    loc.appendChild(doc.createTextNode(new test().xmlReplace(rs.getString(3))));
    person.appendChild(loc);
    comp.appendChild(person);
   }
   rs.close();
   st.close();
   conn.close();
  
   doc.appendChild(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("<", "&lt;");
//   value=value.replace(">", "&gt;");
//   value=value.replace("'", "&apos;");
   value=value.replace( "&lt;","<");
   value=value.replace( "&gt;",">");
   value=value.replace( "&apos;","'");
// value.replace("""", "&quot;");
   System.out.println("value---new"+value);
    return value;
}

}


类别:经验总结 | 添加到搜藏 | 浏览() | 评论 (0)
 
最近读者:
 
网友评论:
发表评论:
姓 名:
网址或邮箱: (选填)
内 容:
验证码: 请点击后输入四位验证码,字母不区分大小写
      

     

©2009 Baidu