java生成html表格数据_使用Java将表格数据导出成Excel格式
前言:本文使用后臺處理的辦法導出前端表格中顯示的數據。
引入依賴
org.apache.poi
poi
3.17
書寫PoiUtils
public classPoiUtils {public static ResponseEntity exportExcel(List marketList) throwsIOException {
HttpHeaders headers=null;//創建文檔
HSSFWorkbook workbook = newHSSFWorkbook();//創建excel文檔
HSSFSheet sheet = workbook.createSheet("市場表");//定義列的寬度
sheet.setColumnWidth(0, 5 * 256);
sheet.setColumnWidth(1, 10 * 256);
sheet.setColumnWidth(2, 10 * 256);
sheet.setColumnWidth(3, 10 * 256);
sheet.setColumnWidth(4, 10 * 256);//設置表頭
HSSFRow headerRow = sheet.createRow(0);
headerRow.createCell(0).setCellValue("編號");
headerRow.createCell(1).setCellValue("主題");
headerRow.createCell(2).setCellValue("預算");
headerRow.createCell(3).setCellValue("線索");for (int i=0;i
HSSFRow row= sheet.createRow(i+1);
Market market=marketList.get(i);
row.createCell(0).setCellValue(market.getId());
row.createCell(1).setCellValue(market.getTheme());
row.createCell(2).setCellValue(market.getbudget());
row.createCell(3).setCellValue(market.getClue());
}//將excel寫入到ByteArrayOutStream中
ByteArrayOutputStream bos = newByteArrayOutputStream();
workbook.write(bos);
headers=newHttpHeaders();
headers.setContentDispositionFormData("attachment",new String("員工表.xls".getBytes("utf-8"),"iso-8859-1"));//創建ResponseEntity實體并返回
return new ResponseEntity(bos.toByteArray(), headers, HttpStatus.CREATED);
}
}
顯示效果
到瀏覽器中測試:localhost:80/exportExcel(這是我測試的url,你們的自己根據實際情況來使用)
問題:這個請求只能在瀏覽器中使用,但在實際的項目中使用是時候該如何使用呢?
有朋友就會說這個很簡單呀,直接使用ajax請求該路徑不久完事了嗎?哈哈哈,此時高手就會想到,ajax請求返回的是json,不是文件流,所以不能使用ajax來進行請求。
這個時候我們可以使用原始表單來解決,具體實現方法如下:
導出1
//導出,使用這種方式 可以,使用 ajax請求不可以 導出excel
function exportExcel(){
var form= $("
");form.attr(‘style‘, ‘display:none‘);
form.attr(‘target‘, ‘‘);
form.attr(‘method‘, ‘post‘);
form.attr(‘action‘, ‘${pageContext.request.contextPath}/user/export‘);
var input1= $(‘‘);
input1.attr(‘type‘, ‘hidden‘);
input1.attr(‘name‘, ‘item‘);
input1.attr(‘value‘, ‘test‘); /*JSON.stringify($.serializeObject($(‘#searchForm‘)))*/$(‘body‘).append(form);
form.append(input1);
form.submit();
form.remove();
}
原文:https://www.cnblogs.com/gfbzs/p/12272988.html
總結
以上是生活随笔為你收集整理的java生成html表格数据_使用Java将表格数据导出成Excel格式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: qtcreator下拉列表怎么制作_设置
- 下一篇: 运行Java程序时 Tomcat出错 显