以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 XML 与 数据库 』  (http://bbs.xml.org.cn/list.asp?boardid=17)
----  将SQL Server中的数据查询结果转化为XML形式[原创]  (http://bbs.xml.org.cn/dispbbs.asp?boardid=17&rootid=&id=40897)


--  作者:zt99
--  发布时间:12/6/2006 8:32:00 AM

--  将SQL Server中的数据查询结果转化为XML形式[原创]
有数据库文件BOOK.mdb(bookname(text),author(text),pub(text),price(text),pubdate(text))
XML文件MyXML2.xml(bookname,author,pub,price,pubdate)
package cn.learn;
import cn.c14.*;
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.input.SAXBuilder;
import org.jdom.output.Format;
import org.jdom.output.XMLOutputter;
import java.io.FileOutputStream;
import java.sql.*;
public class AddToXML2 {
 /**
  * @param args
  */
 public static void main(String[] args) throws Exception{
  // TODO Auto-generated method stub
  //连接数据库
  String dbUrl = "jdbc:odbc:Book";
  String user ="";
  String password ="";  
  Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
  Connection c=DriverManager.getConnection(dbUrl,user,password);
  //SQL预编译
  java.sql.PreparedStatement  s=c.prepareStatement("SELECT * FROM Book  WHERE bookname =?");
  //键盘输入查询信息
  System.out.println("Please enter the bookname to find:");
  s.setString(1, MyInput.readString());
  ResultSet r=s.executeQuery();//执行SQL,获得结果集
  while(r.next()){  
  try {
  //构建XML
  SAXBuilder builder = new SAXBuilder();
  Document doc = builder.build("MyXML2.xml");
  Element Allbooks = doc.getRootElement(); 
  //将SQL查询结果生成到XML
    Allbooks.addContent(0,new Element("book")); //append  in  the first   
  Allbooks.getChild("book").addContent(
     (new Element("bookname").addContent(r.getString("bookname"))));
  Allbooks.getChild("book").addContent(
     (new Element("author").addContent(r.getString("author"))));
  Allbooks.getChild("book").addContent(
     (new Element("pub").addContent(r.getString("pub"))));
  Allbooks.getChild("book").addContent(
     (new Element("price").addContent(r.getString("price"))));
  Allbooks.getChild("book").addContent(
     (new Element("pubdate").addContent(r.getString("pubdate"))));
    
  Format format = Format.getCompactFormat();
  XMLOutputter XMLOut = new XMLOutputter(format);
  XMLOut.output(doc,new FileOutputStream("MyXML2.xml"));    
     }catch (Exception e) {
     System.out.println(e.getMessage());
      }
   }
 }
}
新手第一帖:
小弟初学XML时写的一个简单的将SQL Server中的数据查询结果(ResultSet)转化为XML形式,水平有限,各位大哥多指教!!!
E-mail:zhentian99@163.com
--  作者:zt99
--  发布时间:12/6/2006 8:38:00 AM

--  
import java.io.*;
public class MyInput {
   public static String readString()
 {
    BufferedReader br=new BufferedReader(new InputStreamReader(System.in),1);
 String string=" ";
 try
 {
 string=br.readLine();
 }
 catch (IOException ex)
 {
 System.out.println(ex);
 }
 return string;
 }
}
--  作者:weatherhrr
--  发布时间:12/11/2006 10:28:00 PM

--  
顶一下哈,多谢,我看了,觉得满好,在此基础上获得了更多的理解,多谢了喔
--  作者:wangshucai
--  发布时间:4/24/2007 11:38:00 AM

--  
谢了
--  作者:missing62
--  发布时间:4/22/2008 2:38:00 PM

--  
顶~~~~有代码的我都顶~~~~
--  作者:nedvedno1
--  发布时间:4/30/2008 9:57:00 AM

--  
顶一个
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
62.500ms