您的位置:首页 > 数据库

jsp中将数据库中的数据导入到excel的实现

2005-04-18 22:57 661 查看
  我最近做的一个项目是在jsp页面中将数据库中的数据到如到excel中,结合我以往的经验,我做了一个bean可以方便的实现。package com.javaTNT.excel;
/**
* @(#)cexcel.java 1.0 04/03/16
* Title:
* Description:
* Copyright:    Copyright (c) 2003
* Company:
* @author 董政利
* @version 2.0
*/
import java.io.*;
import java.sql.*;
import com.javaTNT.excel.*;
import jxl.*;
import jxl.write.*;
public class excel{
//MyExecSQL 连接数据库的类
MyExecSQL conn=null;
 //构造函数 
 public excel(){
     conn=new MyExecSQL();
 }
  /*========================================================
   === 函数功能:生成excel文件
   === 参    数
   ===     title:字段名称
   ===     sql: sql字符串
   ===     path:文件生成路径
  === 返 回 值:
   === 开 发 者:董政利
   === 开发时间:2004-03-16
   === 修改纪录:
   ==========================================================*/
  public void createEXCEL(String[]title,String sql,String path){
    int i=0;
    int j=0;
    ResultSet rs=null;
   try {
     //建立与数据库的连接
     conn.MyConnectSQLSERVER("dzl","traffic");
     rs=conn.execQuery(sql);
     //构建Workbook对象, 只读Workbook对象
     //:创建可写入的Excel工作薄
     WritableWorkbook wwb = Workbook.createWorkbook(new FileOutputStream(path));
     WritableSheet ws = wwb.createSheet("sheet1", 0);
  for( i=0;i<title.length;i++){
       WritableFont wf = new WritableFont(WritableFont.TIMES, 12, WritableFont.BOLD, false);
       WritableCellFormat wcfF = new WritableCellFormat(wf);
       Label labelCF = new Label(i, 0, title[i],wcfF);
       ws.addCell(labelCF);
      }
     
     i=1;
     while (rs.next()) {
      for(j=1;j<=title.length;j++)
      {
       Label labelC = new Label(j-1,i, rs.getString(j));
       ws.addCell(labelC);
   }
      i++;  
    }
    //写入Exel工作表
    wwb.write();
    //关闭Excel工作薄对象
    wwb.close();
    rs.close();
    conn.MyDisConnect();
  }
  catch (Exception e) {
    System.out.println(e.toString());
  }
}
////测试函数
//   public static void main(String args[])
//   {
//      String[] title={"我","的","测","试"};
//      String sql="select bh,jb,mc,xh from dq order by xh ";
//      excel Myexcel=new excel();
//      Myexcel.createEXCEL(title,sql,"d://dzl.csv"); 
//   }
}
我用的是java的一个开源项目jxl在网上可以方便的下载。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息