db2xml.java

来自「使用dom2,sax2解析xml,使用解析器生成、转化xml」· Java 代码 · 共 72 行

JAVA
72
字号
package xmloperation;
import java.sql.*;
import javax.xml.parsers.*;
import org.apache.crimson.tree.*;
import org.w3c.dom.*;
import java.io.*;

public class db2xml
{
  static Connection con;
  static ResultSet results;
  static String name,address,tel,fax,email,sql;

  public db2xml() {}

  public static void main(String[] args)
  {
    Document doc;
    Element people = null;
    Element person = null;
    Element name = null;
    Element address = null;
    Element tel = null;
    Element fax = null;
    Element email = null;

    try
    {
      Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
      con = DriverManager.getConnection("jdbc:odbc:SocketTest","liu","liu");
      Statement stmt = con.createStatement();
      results = stmt.executeQuery("select * from people");

      DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
      DocumentBuilder builder = dbf.newDocumentBuilder();
      doc = builder.newDocument();
      people = doc.createElement("PEOPLE");
      while(results.next())
      {
        person = doc.createElement("PERSON");
        people.appendChild(person);

        name = doc.createElement("NAME");
        name.appendChild(doc.createTextNode(results.getString("USERNAME")));
        people.appendChild(name);

        address = doc.createElement("ADDRESS");
        address.appendChild(doc.createTextNode(results.getString("ADDRESS")));
        people.appendChild(address);

        tel = doc.createElement("TEL");
        tel.appendChild(doc.createTextNode(results.getString("TEL")));
        people.appendChild(tel);

        fax = doc.createElement("FAX");
        fax.appendChild(doc.createTextNode(results.getString("FAX")));
        people.appendChild(fax);

        email = doc.createElement("EMAIL");
        email.appendChild(doc.createTextNode(results.getString("EMAIL")));
        people.appendChild(email);
      }
      doc.appendChild(people);
      ((XmlDocument)doc).write(new FileOutputStream(new File("people.xml")));
    }
    catch(Exception e)
    {
      e.printStackTrace();
    }
  }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?