用POI来作。包下载地址  http://jakarta.apache.org/poi/index.html代码如下:public static void ResultSet2Excel() {
    try {
Class.forName("org.gjt.mm.mysql.Driver").newInstance();
String url = "jdbc:mysql://localhost/test?user=root&password=root_pwd&useUnicode=true&characterEncoding=GB2312";
Connection conn = DriverManager.getConnection(url);
Statement stmt = conn.createStatement();
String sql = "select * from reporttest";
ResultSet rs = stmt.executeQuery(sql);
         //取表字段信息
Database db = new Database();
DataSet ds = db.resultSetToDataSet(rs);
Column[] cols = ds.getColumns();
         
         //创建Excel表结构信息
HSSFWorkbook wb = new HSSFWorkbook();
HSSFSheet sheet = wb.createSheet();
//在Excele文件中创建表头
int row_num = 0;
HSSFRow row = sheet.createRow(row_num);
HSSFCell cell = null;
int cols_count = cols.length;
         //设置表字段信息到excel作为表头
for (int i = 0; i < cols_count; i++) {
cell = row.createCell( (short) i);
cell.setCellValue(cols[i].getColumnName());
}
row_num++;
rs.first();
while (rs.next()) {
row = sheet.createRow(row_num);
for (int i = 0; i < cols_count; i++) {
cell = row.createCell( (short) i);
cell.setCellValue(rs.getString(cols[i].getColumnName()));
}
row_num++;
}
rs.close();
stmt.close();
conn.close();
FileOutputStream out = new FileOutputStream("rs2excel.xls");
wb.write(out);
out.close();
     }
     catch (Exception e) {
e.printStackTrace();
    }
}