做中介最好用的网站,南通水情最新信息,中建集团官网,北京昨晚出什么大事Spring boot集成easy excel
一 查看官网
easyexcel官方网站地址为easyexcel官网#xff0c;官网的信息比较齐全#xff0c;可以查看官网使用easyexcel的功能。
二 引入依赖
使用easyexcel#xff0c;首先要引入easyexcel的maven依赖#xff0c;具体的版本根据你的需求去…Spring boot集成easy excel
一 查看官网
easyexcel官方网站地址为easyexcel官网官网的信息比较齐全可以查看官网使用easyexcel的功能。
二 引入依赖
使用easyexcel首先要引入easyexcel的maven依赖具体的版本根据你的需求去设置。 !--easyexcel--dependencygroupIdcom.alibaba/groupIdartifactIdeasyexcel/artifactIdversion2.2.10/version/dependency三 实现简单导入
首先定义实体类
Data
AllArgsConstructor
NoArgsConstructor
public class Device {ExcelIgnoreprivate Integer id;ExcelProperty(设备名称)private String name;ExcelProperty(设备编号)private String no;ExcelProperty(设备描述)private String description;ExcelProperty(设备类型)private Integer type;DateTimeFormat(pattern yyyy-MM-dd HH:mm:ss)ExcelIgnoreprivate LocalDateTime createTime;ExcelIgnoreprivate Integer status;
}在定义实体类的时候使用到了lombok需要提前引入lombok的依赖 !--lombok--dependencygroupIdorg.projectlombok/groupIdartifactIdlombok/artifactIdoptionaltrue/optional/dependency准备工作完成之后就可以写一个简单的导入了。如下我在controller中写了导入方法通过EasyExcel的read方法把excel中的数据解析成对应的列表然后就可以直接调用service导入了。 RequestMapping(save)public String save(MultipartFile file) throws IOException {String originalFilename file.getOriginalFilename();ListDevice list EasyExcel.read(file.getInputStream()).head(Device.class).sheet().doReadSync();deviceService.batchSave(list);return redirect:/device/lists;}四 实现简单导出
在controller写了简单的导出方法拿到service得到的数据就可以直接调用EasyExcel的write方法导出了。
GetMapping(export)public void export(Dto dto,HttpServletResponse response) throws IOException {// 这里注意 有同学反应使用swagger 会导致各种问题请直接用浏览器或者用postmanresponse.setContentType(application/vnd.openxmlformats-officedocument.spreadsheetml.sheet);response.setCharacterEncoding(utf-8);// 这里URLEncoder.encode可以防止中文乱码 String fileName URLEncoder.encode(设备数据, UTF-8).replaceAll(\\, %20);response.setHeader(Content-disposition, attachment;filename*utf-8 fileName .xlsx);ListDevice deviceList deviceService.getDeviceList(dto);EasyExcel.write(response.getOutputStream(), Device.class).sheet(数据).doWrite(deviceList);}五 批量导出功能
请参考easyexcel实现批量导出功能
总结
使用easyexcel实现导入和导出确实是非常方便的同时easyexcel还支持批量导入和批量导出确实非常nice。