這篇文章將為大家詳細(xì)講解有關(guān)Java中poi如何導(dǎo)出Excel下載到客戶端,小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。
讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對(duì)這個(gè)行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長期合作伙伴,公司提供的服務(wù)項(xiàng)目有:空間域名、虛擬空間、營銷軟件、網(wǎng)站建設(shè)、北票網(wǎng)站維護(hù)、網(wǎng)站推廣。
具體內(nèi)容如下
Maven配置,包含了其他文件格式的依賴,就全貼出來了
<dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-excelant</artifactId> <version>3.12</version> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-scratchpad</artifactId> <version>3.12</version> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId> <version>3.8</version> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml-schemas</artifactId> <version>3.8</version> </dependency>
Service層
@Override public void export(Long sblsh, String excelName, OutputStream out) { try { // 第一步,創(chuàng)建一個(gè)webbook,對(duì)應(yīng)一個(gè)Excel文件 HSSFWorkbook wb = new HSSFWorkbook(); //生成一個(gè)表格 HSSFSheet sheet = wb.createSheet(excelName); // 第三步,在sheet中添加表頭第0行 HSSFRow row = sheet.createRow(0); // 第四步,創(chuàng)建單元格,并設(shè)置值表頭 設(shè)置表頭居中 HSSFCellStyle style = wb.createCellStyle(); style.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 創(chuàng)建一個(gè)居中格式 HSSFCell cell = row.createCell(0); cell.setCellStyle(style); Byte kjzz = qyjbxxMapper.getKjzz(sblsh); List<A> record = this.selectBySblsh(sblsh); this.insertData(wb, sheet, row, record, out); } } catch (Exception e) { logger.info(e.getMessage()); } } /** * 導(dǎo)入數(shù)據(jù)到表格中 * @param wb execl文件 * @param sheet 表格 * @param row 表格行 * @param record 要導(dǎo)出的數(shù)據(jù) * @param out 輸出流 */ private void insertData(HSSFWorkbook wb,HSSFSheet sheet,HSSFRow row,List<A> record, OutputStream out){ try { row = sheet.createRow(1); for(int i=0;i<title.length;i++){ row.createCell(i).setCellValue(title[i]); } for(int i=0;i<record.size();i++){ row = sheet.createRow(i+2); A data = record.get(i); row.createCell(0).setCellValue(data.getHc()); row.createCell(1).setCellValue(data.getXm()); BigDecimal je = data.getJe(); if(je!=null){ row.createCell(2).setCellValue(je.doubleValue()); } } //合并單元格,前面2位代表開頭結(jié)尾行,后面2位代表開頭結(jié)尾列 CellRangeAddress region = new CellRangeAddress(0,0,0,title.length-1); sheet.addMergedRegion(region); wb.write(out); out.flush(); out.close(); wb.close(); } catch (Exception e) { logger.info(e.getMessage()); } }
Controller
@RequestMapping("/export") public void export(Long sblsh, HttpServletRequest request, HttpServletResponse response){ response.setContentType("octets/stream"); String excelName = "文件名"; try { response.addHeader("Content-Disposition", "attachment;filename="+new String(excelName.getBytes("gb2312"), "ISO8859-1" )+".xls"); OutputStream out = response.getOutputStream(); aService.export(sblsh,excelName ,out); } catch (Exception e) { e.printStackTrace(); } }
關(guān)于“Java中poi如何導(dǎo)出Excel下載到客戶端”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。
網(wǎng)頁標(biāo)題:Java中poi如何導(dǎo)出Excel下載到客戶端
當(dāng)前路徑:http://muchs.cn/article22/gedsjc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供電子商務(wù)、外貿(mào)建站、定制網(wǎng)站、網(wǎng)站設(shè)計(jì)公司、搜索引擎優(yōu)化、用戶體驗(yàn)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)