easyExcel使用模板导出exel

工作中经常会遇到使用特定的excel模板导出excel,这里记录一下以备后续使用查阅。

下面是导出的每行记录的实体类;

import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import lombok.Data;

@Data
public class SelectedExcel {

    
    //@ColumnWidth(20)
    @ExcelProperty(index = 0)
    private String sellerName;

    
    //@ColumnWidth(50)
    @ExcelProperty(index = 1)
    private String reportName;
}

下面是使用模板导出数据的部分代码,具体使用的时候改为自己项目中需要的实际代码。

public String getExcelReportList(Date start, Date end){
        
        List<SelectedExcel> selectedExcels= new ArrayList<>();
        for(int i=0;i<9;i++){
            // 此处是循环加入新的导出行数据list-下写的是伪代码            selectedExcels.add(new SelectedExcel());
        }
        String generateDateFileName = FileUtil.generateDateFileName("***", ".xlsx");
        StringBuffer fileNameSb=new StringBuffer(reportpath).append(generateDateFileName);
        //获取文件路径
        ClassPathResource resource= new ClassPathResource("template/templatet.xlsx");
        String templateFileName = null;
        try {
            templateFileName = resource.getFile().getPath();
        } catch (IOException e) {
            e.printStackTrace();
        }
        EasyExcel.write(fileNameSb.toString(), SelectedExcel.class).withTemplate(templateFileName).needHead(false).sheet("Sheet1").doWrite(selectedExcels);
        return fileNameSb.toString();
    }

 

posted @ 2022-07-05 17:11  丹阳89  阅读(3536)  评论(0)    收藏  举报