• EasyExcel写文件


    公共部分

    HttpServletResponse

    // 需要处理response
    HttpServletResponse response;
    response.reset();
    response.setCharacterEncoding("UTF-8");
    response.setContentType("application/x-download");
    response.setHeader("Content-Disposition", "attachment; filename=" + new String(fileName.getBytes("UTF-8"), "GBK") + ".xlsx");
    
    

    写入对象:SendTaskListDataBo

    public class SendTaskListDataBo extends BaseRowModel implements Serializable {
        /** value为表头,index为列号 */
        @ExcelProperty(value = "发放主任务ID" ,index = 0)
        private Long mainTaskId;
        @ColumnWidth(20)// 列宽度
        @ExcelProperty(value = "发放主任务名称" ,index = 1)
        private String mainTaskName;
    }
    
    

    通过对象写入方式

    // 需要写入的数据
    List<SendTaskListDataBo> sendTaskListDataBos;
    // 写入到excel中,.sheet定义sheet名称
    EasyExcel.write(response.getOutputStream(), SendTaskListDataBo.class)
    .sheet("发放任务列表").doWrite(sendTaskListDataBos);
    
    

    通过模板填充方式

    // 模板名称,文件位置:resources/templates/excel
    String  templateFileName = "templates" + File.separator + "excel" + File.separator + "export_send_task_template.xlsx";
    // 写入excel,springboot 使用new ClassPathResource();
    ExcelWriter excelWriter = EasyExcel.write(response.getOutputStream()).withTemplate
    (new ClassPathResource(templateFileName).getInputStream()).build();
    
    WriteSheet writeSheet = EasyExcel.writerSheet().build();
    // 单个对象填充 {name}
    excelWriter.fill(sendTaskListDataBo, writeSheet);
    // 填充集合 {.name}
    excelWriter.fill(subTaskDataBos, writeSheet);
    excelWriter.finish();
    
    

    模板文件excel

  • 相关阅读:
    centos8.0 安装 jenkins
    No match for argument: mysql-community-server Error: Unable to find a match: mysql-community-server
    Navicat 远程连接 centos8.0
    centos8.0 安装 mysql
    -bash: java-version: command not found
    centos8.0 安装 JDK1.8
    [Err] 1062
    android之Fragment基础详解(一)
    Android之RecyclerView(一)
    Android之ProgressBar
  • 原文地址:https://www.cnblogs.com/ngrzr/p/11983251.html
Copyright © 2020-2023  润新知