當前位置:編程學習大全網 - 源碼下載 - java中利用poi生成excel,在頁面中如何使用ajax提交請求?

java中利用poi生成excel,在頁面中如何使用ajax提交請求?

簡單的poiEXCEL操作。部分代碼。嘿嘿

/**

* 創建標準模板

* @param request

* @param response

* @throws Exception

*/

private void createEXCELTemplet(HttpServletRequest request,

HttpServletResponse response) throws Exception {

HSSFWorkbook hssfworkbook = new HSSFWorkbook();

HSSFSheet hssfsheet = hssfworkbook.createSheet();

String downloadFileName = sellActivityTitle;

createSheetTableTile(hssfsheet,ExcelConstantTitle.sellActivityTitleMap,TEMPLET_CELL_COUNT);

downloadEXCEL(hssfworkbook, downloadFileName, request, response);

}

/**

* 提供下載

* @param hssfworkbook

* @param downloadFileName

* @param request

* @param response

* @throws Exception

*/

private void downloadEXCEL(HSSFWorkbook hssfworkbook,

String downloadFileName, HttpServletRequest request,

HttpServletResponse response) throws Exception {

try {

//設置response,下載附件頭設置

response.setContentType("application/vnd.ms-excel");

response.setHeader("content-disposition",

"attachment;filename=\""

+ new String(downloadFileName.getBytes("GBK"),

"ISO-8859-1") + "\";size="

+ hssfworkbook.getBytes().length);

OutputStream out = response.getOutputStream();

//將工作簿輸出到response

hssfworkbook.write(out);

out.flush();

out.close();

} catch (Exception e) {

throw new Exception(e);

}

}

/**

* 創建校驗數據之後的模板

*/

private void createValidateExcelAfterTemplet(HttpServletRequest request,

HttpServletResponse response,List list) throws Exception {

HSSFWorkbook hssfworkbook = new HSSFWorkbook();

HSSFSheet hssfsheet = hssfworkbook.createSheet();

// 創建正文

String downloadFileName = validateSellActivityAfterTitle;

createSheetTableTile(hssfsheet,ExcelConstantTitle.sellActivityTitleMap,VALIDATE_AFTER_CELL_COUNT);

//添加數據

addSheetContentList(hssfsheet,ExcelConstantTitle.sellActivityContentMap,list);

downloadEXCEL(hssfworkbook, downloadFileName, request, response);

}

/**

* 創建EXCEL表頭

* @param hssfsheet

* @param titleMap

* @param size

* @return

*/

private HSSFSheet createSheetTableTile(HSSFSheet hssfsheet,Map titleMap,int size){

// 創建正文

HSSFRow hssfrow = hssfsheet.createRow(0);

for (int i = 0; i < size; i++) {

// 設置列寬度

hssfsheet.setColumnWidth((short) i, (short) 4000);

HSSFCell hssfcell = hssfrow.createCell((short) i);

hssfcell.setEncoding(HSSFWorkbook.ENCODING_UTF_16);

switch (i) {

case 0:

hssfcell.setCellValue((String)titleMap.get(String.valueOf(i)));

break;

case 1:

hssfcell.setCellValue((String)titleMap.get(String.valueOf(i)));

break;

case 2:

hssfcell.setCellValue((String)titleMap.get(String.valueOf(i)));

break;

case 3:

hssfcell.setCellValue((String)titleMap.get(String.valueOf(i)));

break;

case 4:

hssfcell.setCellValue((String)titleMap.get(String.valueOf(i)));

break;

case 5:

hssfcell.setCellValue((String)titleMap.get(String.valueOf(i)));

break;

case 6:

hssfcell.setCellValue((String)titleMap.get(String.valueOf(i)));

break;

}

}

return hssfsheet;

}

/**

* 添加excel正文數據

*/

private HSSFSheet addSheetContentList(HSSFSheet hssfsheet,Map contentMap,List contentList){

for(int k = 0;k < contentList.size();k++){

HSSFRow hssfrow = hssfsheet.createRow(k+1);

for (int i = 0; i < VALIDATE_AFTER_CELL_COUNT; i++) {

Map map = (Map) contentList.get(k);

HSSFCell hssfcell = hssfrow.createCell((short) i);

hssfcell.setEncoding(HSSFWorkbook.ENCODING_UTF_16);

switch (i) {

case 0:

hssfcell.setCellValue((String)map.get(contentMap.get(String.valueOf(i))));

break;

case 1:

hssfcell.setCellValue((String)map.get(contentMap.get(String.valueOf(i))));

break;

case 2:

hssfcell.setCellValue((String)map.get(contentMap.get(String.valueOf(i))));

break;

case 3:

hssfcell.setCellValue((String)map.get(contentMap.get(String.valueOf(i))));

break;

case 4:

hssfcell.setCellValue((String)map.get(contentMap.get(String.valueOf(i))));

break;

case 5:

hssfcell.setCellValue((String)map.get(contentMap.get(String.valueOf(i))));

break;

case 6:

hssfcell.setCellValue((String)map.get(contentMap.get(String.valueOf(i))));

break;

}

}

}

return hssfsheet;

}

吧不知道能不能幫妳,我也不動感我在csdn看看的。實在不行妳在那問問。。。。。。。。。。。。。

  • 上一篇:Aspim源代碼
  • 下一篇:《小腎魔盒》是什麽?相關功能作用介紹
  • copyright 2024編程學習大全網