O Java POI Exports Excel e o baixa para o cliente. O conteúdo específico é o seguinte
A configuração do Maven, incluindo dependências para outros formatos de arquivo, é publicada
<Depencency> <PuerpId> org.apache.poi </groupiD> <TROTIFACTID> poi-excelante </artifactId> <versão> 3.12 </versão> </dependency> <pendence> <purrchtyd> org.apache.poi </groupid> <ArtifactId> poi-scratchpad </artefactid <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>
Camada de serviço
@Override public void Export (SBLSH LONG, String ExcelName, OutputStream Out) {try {// A primeira etapa é criar um webbook, correspondendo a um arquivo do Excel HSSFWorkbook WB = new HSSFWorkbook (); // gerar uma tabela hssfheet folha = wb.createSheet (excelname); // A terceira etapa é adicionar a 0ª linha do cabeçalho da tabela na folha hssfrow line = sheet.crerowerow (0); // A quarta etapa é criar uma célula e definir o cabeçalho da tabela de valores para definir o cabeçalho da tabela para o centro hssfCellstyle estilo = wb.createCellStyle (); style.setalignment (hsSfCellStyle.align_center); // Crie um formato centrado HSSFCell Cell = Row.CreateCell (0); Cell.setCellStyle (estilo); Byte kjzz = qyjbxxmapper.getkjzz (sblsh); List <a> Record = this.SelectBysBlsh (sblsh); this.insertData (WB, folha, linha, registro, out); }} catch (Exceção e) {logger.info (e.getMessage ()); }} / *** Importar dados para uma tabela* @param wb Execl Arquivo* @param Sheet Table* @param linha tabela linha* @param gravar dados a serem exportados* @param out stream* / private void insertData (hssfworkbook, hssfsheet, lança hssfrow (lista <a> for (int i = 0; i <title.length; i ++) {row.createCell (i) .SetCellValue (título [i]); } para (int i = 0; i <registro.size (); i ++) {row = sheet.createrow (i+2); A data = registro.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 ()); }} // Mesclar células, os 2 primeiros dígitos representam o início e a linha final, e os últimos 2 dígitos representam a coluna Iniciante e End CellRangeAddress Region = new CellRangeAddress (0,0,0, title.length-1); Sheet.AddmergedRegion (região); wb.Write (Out); out.flush (); out.Close (); wb.close (); } catch (Exceção e) {Logger.info (e.getMessage ()); }} Controlador
@RequestMapping ("/Export") Exportação pública de void (SBLSH LONG, HTTPSERVletRequest Solicy, HttpServletResponse Response) {Response.SetContentType ("Octes/Stream"); String ExcelName = "FileName"; tente {Response.addHeader ("Content-Disposition", "Appion; FileName ="+New String (ExcelName.getBytes ("GB2312"), "ISO8859-1")+". XLS"); OutputStream out = Response.getOutputStream (); ASERVICE.EXPORT (SBLSH, Excelname, Out); } catch (Exceção e) {e.printStackTrace (); }}O exposto acima é todo o conteúdo deste artigo. Espero que seja útil para o aprendizado de todos e espero que todos apoiem mais o wulin.com.