List<CmsAction> list = actionMng.getList(contentId);
String[] tableHeader = {"姓名", "手機號"};
short cellNumber = (short) tableHeader.length;// 表的列數
HSSFWorkbook workbook = new HSSFWorkbook(); // 創建一個excel
HSSFCell cell = null; // Excel的列
HSSFRow row = null; // Excel的行
HSSFCellStyle style = workbook.createCellStyle(); // 設置表頭的類型
style.setAlignment(HSSFCellStyle.ALIGN_CENTER);
HSSFCellStyle style1 = workbook.createCellStyle(); // 設置數據類型
style1.setAlignment(HSSFCellStyle.ALIGN_CENTER);
HSSFFont font = workbook.createFont(); // 設置字體
HSSFSheet sheet = workbook.createSheet("sheet1"); // 創建一個sheet
HSSFHeader header = sheet.getHeader();// 設置sheet的頭
try {
if (list.size() < 1) {
header.setCenter("查無資料");
} else {
header.setCenter("報名表");
row = sheet.createRow(0);
row.setHeight((short) 400);
for (int k = 0; k < cellNumber; k++) {
cell = row.createCell(k);// 創建第0行第k列
cell.setCellValue(tableHeader[k]);// 設置第0行第k列的值
sheet.setColumnWidth(k, 8000);// 設置列的寬度
font.setColor(HSSFFont.COLOR_NORMAL); // 設置單元格字體的顏色.
font.setFontHeight((short) 350); // 設置單元字體高度
style1.setFont(font);// 設置字體風格
cell.setCellStyle(style1);
}
for (int i = 0; i < list.size(); i++) {
CmsAction cmsAction = list.get(i);
JSONObject jobject =new JSONObject();
jobject.put("name", cmsAction.getName());
jobject.put("phone", cmsAction.getPhone());
row = sheet.createRow((short) (i + 1));// 創建第i+1行
row.setHeight((short) 400);// 設置行高
if (cmsAction.getName() != null) {
cell = row.createCell(0);// 創建第i+1行第0列
cell.setCellValue(cmsAction.getName());// 設置第i+1行第0列的值
cell.setCellStyle(style);// 設置風格
}
if (cmsAction.getPhone() != null) {
cell = row.createCell(1); // 創建第i+1行第1列
cell.setCellValue(cmsAction.getPhone());// 設置第i+1行第1列的值
cell.setCellStyle(style); // 設置風格
}
}
}
} catch (Exception e) {
e.printStackTrace();
}
OutputStream out = null;// 創建一個輸出流對象
try {
out = response.getOutputStream();//
response.setHeader("Content-disposition", "attachment; filename=" + "cmsAction.xls");// filename是下載的xls的名,建議最好用英文
response.setContentType("application/vnd.ms-excel;charset=UTF-8");// 設置類型
response.setHeader("Pragma", "No-cache");// 設置頭
response.setHeader("Cache-Control", "no-cache");// 設置頭
response.setDateHeader("Expires", 0);// 設置日期頭
workbook.write(out);
out.flush();
workbook.write(out);
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (out != null) {
out.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
在HTML中
$('#js-export').click(function(){
window.location.href="/jeecmsv9/api/front/action/daochu?contentId=120";
});
<button id="js-export" type="button" class="btn btn-primary">導出Excel</button>