Chinaunix首页 | 论坛 | 博客
  • 博客访问: 415549
  • 博文数量: 112
  • 博客积分: 4000
  • 博客等级: 上校
  • 技术积分: 905
  • 用 户 组: 普通用户
  • 注册时间: 2006-06-05 21:14
文章分类

全部博文(112)

文章存档

2009年(3)

2008年(24)

2007年(55)

2006年(30)

我的朋友

分类: Java

2007-10-12 09:55:27

import java.sql.*;
import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.XMLWriter;
import java.io.FileWriter;
import java.io.File;
import java.io.IOException;
import java.util.Date;
import java.io.FileOutputStream;
public class GetUserListXML {
 
 Connection conn;
 
 public GetUserListXML(String file) {
  try{
   Class.forName("oracle.jdbc.driver.OracleDriver");
   conn = DriverManager.getConnection("jdb:oracle:thin:@ruang:1521:webapp","xling","webapp");
  
   Statement stmt = conn.createStatement();
   ResultSet rst = stmt.executeQuery("SELECT USER_NO,USER_NAME,SEX,COMP_NO,REGISTER_DATE FROM G_USER");
  
   this.exportToXML(rst, file);
   conn.close();
  }catch(ClassNotFoundException e){
   e.printStackTrace();
  }catch(SQLException e1){
   e1.printStackTrace();
  }
 }
 
 private void exportToXML(ResultSet rst,String file){
  Document doc = DocumentHelper.createDocument();
  //doc.setXMLEncoding("UTF-8");
  Element root = doc.addElement("UserList");
 
  root.addAttribute("createTime", (new Date()).toString());
  Element user;
  try{
   while(rst.next()){
    System.out.println(rst.getString(2));
    user = root.addElement("User");
    user.addAttribute("userNo", rst.getString(1));
    user.addAttribute("userName", rst.getString(2));
    user.addAttribute("sex", rst.getString(3));
    user.addAttribute("compNo", rst.getString(4));
    user.addAttribute("registerDate", rst.getString(5));
   }
   root.addAttribute("count",(new Integer(rst.getRow() + 1)).toString());
  }catch(SQLException e){
   //
  }
 
 
  OutputFormat opf = OutputFormat.createCompactFormat();
  opf.setEncoding("UTF-8");//当用FileWriter时,UTF-8编码输出的文件用Notepad打开,中文是乱码?
  //FileWriter fw;
  FileOutputStream fos;
  XMLWriter xw;
  try{
   //fw = new FileWriter(new File(file));
   fos = new FileOutputStream(new File(file));
   //xw = new XMLWriter(fw,opf);
   xw = new XMLWriter(fos);
   xw.write(doc);
   xw.close();
   //fw.close();
   fos.close();
  }catch(IOException e){
   e.printStackTrace();
  }
 }
 
 /**
  * @param args
  */
 public static void main(String[] args) {
  // TODO Auto-generated method stub
  GetUserListXML userList = new GetUserListXML("userList.XML");
 }
}
 
////////////////////////////////////读取xml
import java.io.File;
import java.util.Iterator;
import org.dom4j.io.SAXReader;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.Attribute;
public class First {
 public Document parse(String sFile) throws DocumentException {
  SAXReader reader = new SAXReader();
  Document doc = reader.read(new File(sFile));
  return doc;
 }
 
 public void show(Document doc){
  System.out.println(doc.getName());
  Element root = doc.getRootElement();
  System.out.println(doc.getName());
  System.out.println(doc.getName());
  subShow(root,1);
 }
 
 public void subShow(Element elem,int leval){
  Iterator it = elem.elementIterator();
  Element subElem;
  while(it.hasNext()){
   subElem = (Element) it.next();
   System.out.print(this.getPrefix(leval) + subElem.getName());
   showAttribute(subElem);
   if(subElem.nodeCount() == 1)
    System.out.println(subElem.getStringValue());
   else
    System.out.println();
   subShow(subElem,leval + 1);
  }
 }
 
 public void showAttribute(Element elem){
  Iterator it = elem.attributeIterator();
  Attribute att;
  System.out.print("[");
  while(it.hasNext()){
   att = (Attribute) it.next();
   System.out.print(" " + att.getName() + "=" + att.getValue());
  }
  System.out.print("]");
 }
 
 private String getPrefix(int len){
  return String.format("%" + len * 2 + "s", " ");
 }
 
 public static void main(String[] args) {
  // TODO Auto-generated method stub
  First first = new First();
  try{
   first.show(first.parse("D:\\WEB\\WEBAPP\\WEBAPP_STRUTS_MODULE\\WEB-INF\\web.xml"));
  }catch(DocumentException e){
   System.out.println("Failure");
  }
 }
}
 
阅读(949) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~