赞:java使用easy-excel导入模板下载提供用户进行导入

发布于:2024-04-18 ⋅ 阅读:(19) ⋅ 点赞:(0)

就是我们在点击导入的时候,一般都是有一个模板的,我们需要下载这个模板,然后再按照这个excel模板填充数据之后,再导入。

那么导出模板下载,说白了和前面一篇

赞:java使用easy-excel导出数据的通用模板思路_easyexcel excelwriter-CSDN博客

是相同的思路,只是我们导出数据是对前端表格页面上勾选的数据导出到excel,此时excel里面的数据就是前端表格页面上的数据行记录,但是我导入模板下载说白了也是导出一个excel,只不过excel里面的数据是我们自己定义的固定模板表头(封装实体)一般就是一行。所以其实我们只要调用我们前面的导出工具类,然后将参数List<T> dataResult改为自己定义的固定的表头模板行数据字段封装实体。

所以最终我们会怎么写呢?

就是在controller提供一个接口,假如是

@Api(tags = "关于excel的controller")
@RequestMapping("/excel")
@RestController
public class ExcelController {
    
    @Resource
    ExcelService excelService;

    @GetMapping("/importExcelTemplateDownload")
    @ApiOperation(value="导入模板下载")
    public R importExcelTemplateDownload(){
        excelService.importExcelTemplateDownload();
        return R.success();
    }
}


public class ExcelService{

    public void importExcelTemplateDownload();
}

@Service("excelService")
public class ExcelServiceImpl implements ExcelService{

    @Resource
    HttpServletResponse httpServletResponse;
    @overwirte 
    public void export(String fileName, List<T> dataResult , Class<T> clazz , HttpServletResponse response){
        xxxxxxxxxx =====> 前面一篇文章里面的。
    }

    @overwrite
    public void importExcelTemplateDownload(){
        CustomFixedTemplate cft = new CustomFixedTemplate().setXXX().setXXX()......setXXX();
        List<CustomFixedTemplate> list = new ArrayList();
        list.add(cft);
        export(fileName,list,clazz,httpServletResponse);
    }

}

总结:

        导入模板下载其实就是导出,只不过导出到excel的数据是我们自己自定义的数据。所以只需要将之前导出的业务工具类的List<T> dataResult 传为自己自定义的数据。

最后:

        如果大家觉得这篇文章对你们有所帮助的话,麻烦给个免费的赞赞,也祝各位码农在未来的IT道路上越走越远。谢谢。