导出模板功能
1.映射实体类
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import lombok.Data;
@Data
@ColumnWidth(40)
public class ElectricMeterSettingImportDro {
@ExcelProperty(value = "考场名", index = 0)
private String examPointName;
@ExcelProperty(value = "考场IP:端口号(比如192.168.0.1:1234)", index = 1)
private String electricMeterIp;
}
2.controller层
/**
* 下载模板文件接口
*/
@GetMapping("/electric-meter-setting/download")
public void download(HttpServletResponse response) throws IOException {
electricMeterSettingService.download(response);
}
3.service层
public void download(HttpServletResponse response) throws IOException {
String fileName = "电表参数设置导入模板";
ArrayList<ElectricMeterSettingImportDro> electricMeterSettingImportDros = new ArrayList<>();
ServletOutputStream outputStream = EasyExcelUtil.getServletOutputStream(response, fileName);
EasyExcelUtil.writeExcelWithModel(outputStream, fileName, electricMeterSettingImportDros, ElectricMeterSettingImportDro.class);
}
4.EasyExcel工具类
package com.visualization.common.utils;
import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.ExcelReader;
import com.alibaba.excel.ExcelWriter;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.event.AnalysisEventListener;
import com.alibaba.excel.read.metadata.ReadSheet;
import com.alibaba