寫這東西主要是前段時間項目中有類似的需求,覺得導入Excel也是一個比較常用的功能,所以進行了簡單的封裝;
功能介紹:
1.一個簡單的利用jxl導入Excel的工具;
2.數據集的獲取方式支持JDBC、內部利用Record構建兩種;
3.僅支持字符類型、數值類型、日期類型數據的導入;
附件中的jar可以引入直接使用,jar中已包含源碼,zip中包括各種導入方法的演示;zip中包含了jdbc所需的jar和jxl.jar。
您也可以點擊http://sites.google.com/site/gwikimo/ 進行下載
示例:
(一)采用JDBC方式
Java代碼
package org.wiki.excel.demo;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import org.wiki.excel.core.ExcelUtil;
/***
*
* @description 基於JDBC的方式
* @author Wiki.M
* @date 2009-08-20
*
*/
public class Test4 {
public static void main(String[] args) throws Exception{
Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "wiki");
Statement st = conn.createStatement();
ResultSet rs = st.executeQuery("select * from user");
//Excel標題列
String[] fieldName = {"序號","姓名","年齡","電話號碼","地址","出生日期"};
//是否顯示相應Excel標題列
boolean[] isDisplay = {false,true,false,true,false,true};
//設置列寬
int[] columnView ={20,40,20,20,40,40};
ExcelUtil.exoprtToExcel("f:/export4.xls", rs, fieldName,isDisplay,columnView);
rs.close();
st.close();
conn.close();
System.out.println("導出成功...");
}
}
(二)采用內部Record類方式
Java代碼
package org.wiki.excel.demo;
import java.util.ArrayList;
import java.util.List;
import org.wiki.excel.core.ExcelUtil;
import org.wiki.excel.entity.Record;
/***
*
* @description 基於內部Record類的方式
* @author Wiki.M
* @date 2009-08-20
*
*/
public class Test6 {
public static void main(String[] args) throws Exception{
List<Record> recordList = new ArrayList<Record>();
String[] record1 ={"1","張三","22","123","測試地址1"};
recordList.add(new Record(0,record1));
String[] record2 ={"2","李四","333","456","測試地址2"};
recordList.add(new Record(1,record2));
//Excel標題列名
String[] fieldName = {"序號","姓名","年齡","電話號碼","地址"};
//Excel標題列寬
int[] columnView ={20,40,20,20,40};
//是否顯示Excel相應列
boolean[] isDisplay = {false,true,false,true,false};
ExcelUtil.exoprtToExcel("f:/export6.xls", recordList, fieldName,isDisplay,columnView);
System.out.println("導出成功...");
}
}