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

就是我们在点击导入的时候,一般都是有一个模板的,我们需要下载这个模板,然后再按照这个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道路上越走越远。谢谢。

  • 7
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是使用easyexcel生成多个sheet的Java代码示例: ```java // 创建工作簿 Workbook workbook = new Workbook(); // 创建sheet1 Sheet sheet1 = new Sheet(1, 0); sheet1.setSheetName("Sheet1"); // 设置sheet1的表头 List<List<String>> head1 = new ArrayList<>(); head1.add(Arrays.asList("姓名", "年龄")); sheet1.setHead(head1); // 设置sheet1的数据 List<List<Object>> data1 = new ArrayList<>(); data1.add(Arrays.asList("张三", 20)); data1.add(Arrays.asList("李四", 25)); sheet1.setData(data1); // 将sheet1添加到工作簿中 workbook.addSheet(sheet1); // 创建sheet2 Sheet sheet2 = new Sheet(2, 0); sheet2.setSheetName("Sheet2"); // 设置sheet2的表头 List<List<String>> head2 = new ArrayList<>(); head2.add(Arrays.asList("学科", "成绩")); sheet2.setHead(head2); // 设置sheet2的数据 List<List<Object>> data2 = new ArrayList<>(); data2.add(Arrays.asList("语文", 90)); data2.add(Arrays.asList("数学", 85)); data2.add(Arrays.asList("英语", 95)); sheet2.setData(data2); // 将sheet2添加到工作簿中 workbook.addSheet(sheet2); // 写入数据到Excel文件 EasyExcel.write("test.xlsx").withTemplate().sheet().doWrite(workbook); ``` 在上面的示例中,我们首先创建了一个工作簿(Workbook),然后分别创建了两个sheet(Sheet),并设置了它们的表头和数据。最后,将两个sheet添加到工作簿中,并使用EasyExcel的API将数据写入Excel文件中。 需要注意的是,上面的示例中使用了.withTemplate()方法,这是因为我们没有在代码中指定Excel文件的模板。如果您已经有一个Excel文件作为模板,并且想在此基础上生成新的Excel文件,就需要使用这个方法。如果您不需要使用模板,可以将这个方法去掉。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值