日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > java >内容正文

java

java生成html表格数据_使用Java将表格数据导出成Excel格式

發(fā)布時(shí)間:2024/9/27 java 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java生成html表格数据_使用Java将表格数据导出成Excel格式 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

前言:本文使用后臺(tái)處理的辦法導(dǎo)出前端表格中顯示的數(shù)據(jù)。

引入依賴

org.apache.poi

poi

3.17

書寫PoiUtils

public classPoiUtils {public static ResponseEntity exportExcel(List marketList) throwsIOException {

HttpHeaders headers=null;//創(chuàng)建文檔

HSSFWorkbook workbook = newHSSFWorkbook();//創(chuàng)建excel文檔

HSSFSheet sheet = workbook.createSheet("市場(chǎng)表");//定義列的寬度

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);//設(shè)置表頭

HSSFRow headerRow = sheet.createRow(0);

headerRow.createCell(0).setCellValue("編號(hào)");

headerRow.createCell(1).setCellValue("主題");

headerRow.createCell(2).setCellValue("預(yù)算");

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"));//創(chuàng)建ResponseEntity實(shí)體并返回

return new ResponseEntity(bos.toByteArray(), headers, HttpStatus.CREATED);

}

}

顯示效果

到瀏覽器中測(cè)試:localhost:80/exportExcel(這是我測(cè)試的url,你們的自己根據(jù)實(shí)際情況來使用)

問題:這個(gè)請(qǐng)求只能在瀏覽器中使用,但在實(shí)際的項(xiàng)目中使用是時(shí)候該如何使用呢?

有朋友就會(huì)說這個(gè)很簡單呀,直接使用ajax請(qǐng)求該路徑不久完事了嗎?哈哈哈,此時(shí)高手就會(huì)想到,ajax請(qǐng)求返回的是json,不是文件流,所以不能使用ajax來進(jìn)行請(qǐng)求。

這個(gè)時(shí)候我們可以使用原始表單來解決,具體實(shí)現(xiàn)方法如下:

導(dǎo)出1

//導(dǎo)出,使用這種方式 可以,使用 ajax請(qǐng)求不可以 導(dǎo)出excel

function exportExcel(){

var form= $("

");

form.attr(‘style‘, ‘display:none‘);

form.attr(‘target‘, ‘‘);

form.attr(‘method‘, ‘post‘);

form.attr(‘a(chǎn)ction‘, ‘${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

總結(jié)

以上是生活随笔為你收集整理的java生成html表格数据_使用Java将表格数据导出成Excel格式的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。