Cómo utilizar Apache POI para operar archivos de Excel
controller@RequestMapping("assign2/downloadAssignWayConfigHistory.do")
public?void?downloadAssignWayConfigHistory( HttpServletResponse?response,
@RequestParam(value?=? "collectName", requerido?=?false)?String?collectName,
@RequestParam(value?=? "modifyStartTime", requerido?=?false)?String?modifyStartTime,
@RequestParam(value?=? "modifyEndTime",required?=?false)?String?modifyEndTime){
String?DownloadList";
response.setContentType("aplicación/ binario; charset=UTF-8");
probar{
ServletOutputStream?out=response.getOutputStream();
probar?{
//Establecer encabezado de archivo: el último parámetro se utiliza para establecer el nombre del archivo descargado
response.setHeader("Content-Disposition",?" adjunto; fileName="? ?URLEncoder. encode(fileName ".xls",?" UTF-8"));
}?catch?(UnsupportedEncodingException?e)?{
e.printStackTrace(); p>
}
String[]?excelTitles?=?null; //Título de la primera fila de Excel
ArrayListlt; String, Objectgt; ?new ?ArrayListlt; String, Objectgt; //datos de Excel
excleTitles?=?new?String[]?{?"Title1",?"" Título 2", ?Título 2",?"Título3",?"Título4",?"Título5",?"Título6",?"Título7",?"Título8",?"Título9",?"Título10", "Título 11", ?"Título 12"};
/Obtener datos
HashMaplt; String,?Objectgt;?params?=?new?HashMaplt;String,?Objectgt (); p>
if?(StringUtils. isNotBlank(collectName))?{
params.put("collectName",?collectName);
}
si?(StringUtils.isNotBlank(
modificarStartTime))?{
params.put("modifyStartTime",?modifyStartTime);
}
if?(StringUtils.isNotBlank(modifyEndTime))? {
params.put("modifyEndTime",?modifyEndTime);
}
Maplt; String,?Objectgt;?assignCaseWayHistory?=?collectCenterAssignSettingService.getAssignCaseWayHistory (params);
excelDatas=?(ArrayList)?assignCaseWayHistory.get("rows");
//Exportar Excel
collectCenterAssignSettingService.exportAssignCaseWayHistory( excleTitles ,?excelDatas,?out);?
}?catch(Exception?e){
e.printStackTrace();
}
}
servicio
}
serviciopublic?void?exportAssignCaseWayHistory(String []?exceltitles,
ArrayListlt; Maplt; String,?Objectgt;gt;?excelDatas,?OutputStream?out)?{
intenta{
/?Paso 1, crea un libro correspondiente al archivo de Excel p>
HSSFWorkbook?workbook?=?new?HSSFWorkbook();