springboot EasyExcel excel 模板文件下载
时间: 2023-08-22 18:09:33 浏览: 166
好的,这里提供使用Spring Boot和EasyExcel实现excel模板文件下载的示例代码:
```java
@RestController
public class ExcelController {
@GetMapping("/downloadExcelTemplate")
public void downloadExcelTemplate(HttpServletResponse response) throws IOException {
String fileName = "excel_template.xlsx";
String sheetName = "Sheet1";
List<List<String>> head = new ArrayList<>();
head.add(Arrays.asList("姓名", "年龄", "性别"));
ExcelWriter excelWriter = EasyExcel.write(response.getOutputStream()).withTemplate(new ClassPathResource("templates/" + fileName).getInputStream()).build();
WriteSheet writeSheet = EasyExcel.writerSheet(sheetName).build();
excelWriter.fill(head, writeSheet);
excelWriter.finish();
response.setContentType("application/octet-stream");
response.setHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode(fileName, "UTF-8"));
response.flushBuffer();
}
}
```
在上述代码中,我们使用了`@RestController`注解来声明一个控制器,然后定义了`downloadExcelTemplate`方法来实现excel模板文件下载功能。在该方法中,我们通过`EasyExcel.write()`方法创建了一个ExcelWriter对象,并通过`withTemplate()`方法指定了模板文件的路径。
接下来,我们创建了一个WriteSheet对象,并通过`EasyExcel.writerSheet()`方法设置了sheet的名称。然后,我们通过`excelWriter.fill()`方法将表头数据写入Excel文件中。最后,我们设置响应头并关闭流,即可实现excel模板文件下载功能。
需要注意的是,上述代码中的模板文件必须放在resources/templates目录下。如果您的模板文件不在该目录下,请修改文件路径。
阅读全文