基于现有工具类ExcelUtil可以实现导入导出功能

基于现有工具类可以实现导入导出功能:ExcelUtil<SsupEnterpriseEx> util = new ExcelUtil<SsupEnterpriseEx>(SsupEnterpriseEx.class);
    导入功能:
        1.下载模板
        2.导入模板:excel转list
            1.参数:@RequestPart("file")MultipartFile file
            2.输入流 转 List: util.importExcel(file.getInputStream())
            3.保存List到数据库
            
    
    导出功能:
        1.导出文件:list转excel
            1.参数:HttpServletResponse response
            2.从数据库中查出要导出的List数据
            3.util.exportExcel(response, list, "企业或市场主体数据");
                1.设置头部信息:response.setHeader("Content-disposition", "attachment;filename=" + fileName);// 设置头部信息
                        response.setContentType()
                        response.setCharacterEncoding("utf-8");
                2.编码文件名:String fileName = util.encodingFilename("enterprise");

                3.数据List写入excel:writeSheet();--构造一个excel工作薄
                    3.1 Excel中的工作簿、工作表、行、单元格中的关系:
                        一个Excel文件对应于一个workbook(HSSFWorkbook),
                        一个workbook可以有多个sheet(HSSFSheet)组成, 一个sheet是由多个row(HSSFRow)组成,
                        一个row是由多个cell(HSSFCell)组成

                    3.2 网上示例代码:https://blog.csdn.net/vbirdbest/article/details/72870714/
                        String filePath = desktop + "/template.xls";
        
                        File file = new File(filePath);
                        OutputStream outputStream = new FileOutputStream(file);
                        HSSFWorkbook workbook = new HSSFWorkbook();
                        HSSFSheet sheet = workbook.createSheet("Sheet1");
                        HSSFRow row = sheet.createRow(0);
                        row.createCell(0).setCellValue("id");

                4.将工作薄写入输出流,返回fileName,完成下载:wb.write(response.getOutputStream());

 

posted @ 2022-12-20 10:54  拥抱天空  阅读(291)  评论(0编辑  收藏  举报