public class ExcelUtils extends Object
| 构造器和说明 |
|---|
ExcelUtils() |
| 限定符和类型 | 方法和说明 |
|---|---|
static Boolean |
exportForExcel(javax.servlet.http.HttpServletResponse response,
List<List<String[]>> dataLists,
HashMap notBorderMap,
HashMap regionMap,
HashMap columnMap,
HashMap styles,
HashMap paneMap,
String fileName,
String[] sheetName,
String[] labelName,
HashMap rowStyles,
HashMap columnStyles,
HashMap dropDownMap)
功能描述: excel 数据导出、导出模板
更新日志:
1.response.reset();注释掉reset,否在会出现跨域错误。
|
Boolean |
exportForExcelsNoStyle()
Excel导出:无样式(行、列、单元格样式)、自适应列宽
web 响应(response)
|
Boolean |
exportForExcelsOptimize()
web 响应(response)
Excel导出:有样式(行、列、单元格样式)、自适应列宽
功能描述: excel 数据导出、导出模板
更新日志:
1.response.reset();注释掉reset,否在会出现跨域错误。
|
HashMap |
getColumnStyles() |
List<List<String[]>> |
getDataLists() |
HashMap |
getDropDownMap() |
String |
getFileName() |
String |
getFilePath() |
String[] |
getLabelName() |
HashMap |
getMapColumnWidth() |
HashMap |
getNotBorderMap() |
HashMap |
getPaneMap() |
HashMap |
getRegionMap() |
javax.servlet.http.HttpServletResponse |
getResponse() |
HashMap |
getRowStyles() |
String[] |
getSheetName() |
HashMap |
getStyles() |
static List<List<LinkedHashMap<String,String>>> |
importForExcelData(org.apache.poi.ss.usermodel.Workbook book,
String[] sheetName,
HashMap indexMap,
HashMap continueRowMap)
功能描述:
1.excel 模板数据导入。
|
static ExcelUtils |
initialization() |
void |
setColumnStyles(HashMap columnStyles) |
void |
setDataLists(List<List<String[]>> dataLists) |
void |
setDropDownMap(HashMap dropDownMap) |
void |
setFileName(String fileName) |
void |
setFilePath(String filePath) |
void |
setLabelName(String[] labelName) |
void |
setMapColumnWidth(HashMap mapColumnWidth) |
void |
setNotBorderMap(HashMap notBorderMap) |
void |
setPaneMap(HashMap paneMap) |
void |
setRegionMap(HashMap regionMap) |
void |
setResponse(javax.servlet.http.HttpServletResponse response) |
void |
setRowStyles(HashMap rowStyles) |
void |
setSheetName(String[] sheetName) |
void |
setStyles(HashMap styles) |
Boolean |
testLocalNoStyleNoResponse()
本地测试:输出到本地路径
Excel导出:无样式(行、列、单元格样式)、自适应列宽
|
public static final ExcelUtils initialization()
public Boolean exportForExcelsOptimize()
public Boolean exportForExcelsNoStyle()
public Boolean testLocalNoStyleNoResponse()
public static Boolean exportForExcel(javax.servlet.http.HttpServletResponse response, List<List<String[]>> dataLists, HashMap notBorderMap, HashMap regionMap, HashMap columnMap, HashMap styles, HashMap paneMap, String fileName, String[] sheetName, String[] labelName, HashMap rowStyles, HashMap columnStyles, HashMap dropDownMap)
更新日志: 1.response.reset();注释掉reset,否在会出现跨域错误。[2018-05-18] 2.新增导出多个单元。[2018-08-08] 3.poi官方建议大数据量解决方案:SXSSFWorkbook。[2018-08-08] 4.自定义下拉列表:对每个单元格自定义下拉列表。[2018-08-08] 5.数据遍历方式换成数组(效率较高)。[2018-08-08] 6.可提供模板下载。[2018-08-08] 7.每个表格的大标题[2018-09-14] 8.自定义列宽:对每个单元格自定义列宽[2018-09-18] 9.自定义样式:对每个单元格自定义样式[2018-10-22] 10.自定义单元格合并:对每个单元格合并[2018-10-22] 11.固定表头[2018-10-23] 12.自定义样式:单元格自定义某一列或者某一行样式[2018-11-12] 13.忽略边框(默认是有边框)[2018-11-15] 14.函数式编程换成面向对象编程[2018-12-06-5] 15.单表百万数据量导出时样式设置过多,导致速度慢(行、列、单元格样式暂时去掉)[2019-01-30]
版 本: 1.apache poi 3.17 2.apache poi-ooxml 3.17
response - dataLists - 导出的数据(不可为空:如果只有标题就导出模板)sheetName - sheet名称(不可为空)columnMap - 自定义:对每个单元格自定义列宽(可为空)dropDownMap - 自定义:对每个单元格自定义下拉列表(可为空)styles - 自定义:每一个单元格样式(可为空)rowStyles - 自定义:某一行样式(可为空)columnStyles - 自定义:某一列样式(可为空)regionMap - 自定义:单元格合并(可为空)paneMap - 固定表头(可为空)labelName - 每个表格的大标题(可为空)fileName - 文件名称(可为空,默认是:sheet 第一个名称)notBorderMap - 忽略边框(默认是有边框)public static List<List<LinkedHashMap<String,String>>> importForExcelData(org.apache.poi.ss.usermodel.Workbook book, String[] sheetName, HashMap indexMap, HashMap continueRowMap)
更新日志: 1.共用获取Excel表格数据。 2.多单元数据获取。 3.多单元从第几行开始获取数据[2018-09-20] 4.多单元根据那些列为空来忽略行数据[2018-10-22]
版 本: 1.apache poi 3.17 2.apache poi-ooxml 3.17
book - Workbook对象(不可为空)sheetName - 多单元数据获取(不可为空)indexMap - 多单元从第几行开始获取数据,默认从第一行开始获取(可为空,如 hashMapIndex.put(1,3); 第一个表格从第三行开始获取)continueRowMap - 多单元根据那些列为空来忽略行数据(可为空,如 mapContinueRow.put(1,new Integer[]{1, 3}); 第一个表格从1、3列为空就忽略)public String[] getSheetName()
public void setSheetName(String[] sheetName)
public String[] getLabelName()
public void setLabelName(String[] labelName)
public javax.servlet.http.HttpServletResponse getResponse()
public void setResponse(javax.servlet.http.HttpServletResponse response)
public HashMap getNotBorderMap()
public void setNotBorderMap(HashMap notBorderMap)
public HashMap getRegionMap()
public void setRegionMap(HashMap regionMap)
public HashMap getMapColumnWidth()
public void setMapColumnWidth(HashMap mapColumnWidth)
public HashMap getStyles()
public void setStyles(HashMap styles)
public HashMap getPaneMap()
public void setPaneMap(HashMap paneMap)
public HashMap getRowStyles()
public void setRowStyles(HashMap rowStyles)
public HashMap getColumnStyles()
public void setColumnStyles(HashMap columnStyles)
public HashMap getDropDownMap()
public void setDropDownMap(HashMap dropDownMap)
public String getFileName()
public void setFileName(String fileName)
public String getFilePath()
public void setFilePath(String filePath)
Copyright © 2019. All rights reserved.