溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

怎么在Java項目中使用POI導(dǎo)出Excel數(shù)據(jù)

發(fā)布時間:2021-03-23 15:14:58 來源:億速云 閱讀:172 作者:Leah 欄目:編程語言

本篇文章給大家分享的是有關(guān)怎么在Java項目中使用POI導(dǎo)出Excel數(shù)據(jù),小編覺得挺實用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

簡介

SXSSFWorkbook 需要 poi-ooxml 包 3.8 及以上開始支持,我這邊適使用的是 3.9 版本,本質(zhì)是一個 XSSFWorkbook 類( Excel2007 ),它使用的方式是采用 硬盤空間 來大幅降低 堆內(nèi)存 的占用,在系統(tǒng)的臨時文件夾目錄創(chuàng)建一個臨時文件,然后將所有大于約定行數(shù)的數(shù)據(jù)都存入臨時文件,而不是全部放在內(nèi)存中,內(nèi)存中只存放 最新的 的約定條數(shù)的數(shù)據(jù),從而實現(xiàn)以硬盤空間換取內(nèi)存空間,避免內(nèi)存溢出

使用方式

與正常的Excel導(dǎo)出方法沒有區(qū)別,只是將實例化的類換為 SXSSFWorkbook

SXSSFWorkbook workbook = null;
  OutputStream outputStream = null;
  try {
  outputStream = response.getOutputStream();
  //創(chuàng)建工作簿
  workbook = new SXSSFWorkbook();
  // 打開壓縮功能 防止占用過多磁盤
  workbook.setCompressTempFiles(true);
  // 創(chuàng)建一個工作表
  Sheet sheet = workbook.createSheet("表名");
  // 創(chuàng)建一行
  Row titleRow = sheet.createRow(0);
  // 創(chuàng)建一個單元格
  Cell cell = titleRow.createCell(0);
  // 給單元格賦值
  cell.setCellValue("內(nèi)容");
  // 將工作簿寫入輸出流
  workbook.write(outputStream);
  } catch (Exception e) {
  e.printStackTrace();
  }finally {
  if (workbook != null) {
   //使用完畢后將產(chǎn)生的臨時文件刪除 防止將磁盤搞滿
   workbook.dispose();
  }
  if (outputStream != null) {
   outputStream.close();
   
  }
  }

以上就是怎么在Java項目中使用POI導(dǎo)出Excel數(shù)據(jù),小編相信有部分知識點可能是我們?nèi)粘9ぷ鲿姷交蛴玫降?。希望你能通過這篇文章學(xué)到更多知識。更多詳情敬請關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI