SpringBoot 实现Execl 导入导出
2023-12-29 10:38:51
1、引包
<dependency>
<groupId>cn.afterturn</groupId>
<artifactId>easypoi-base</artifactId>
<version>3.0.3</version>
</dependency>
<dependency>
<groupId>cn.afterturn</groupId>
<artifactId>easypoi-web</artifactId>
<version>3.0.3</version>
</dependency>
<dependency>
<groupId>cn.afterturn</groupId>
<artifactId>easypoi-annotation</artifactId>
<version>3.0.3</version>
</dependency>
2、导入样例?
@ApiOperation(notes = "Excel业务导入", value = "Excel业务导入")
@PostMapping("/businessFromExcel")
public HttpResponse businessFromExcel(@RequestPart("file") MultipartFile file) throws Exception {
ImportParams params = new ImportParams();
params.setHeadRows(1);
List<Business> list = ExcelImportUtil.importExcel(
file.getInputStream(),
Business.class, params);
boolean result = businessService.insertBusiness(list);
if(result){
return new HttpResponse<>().success();
}else{
return new HttpResponse<>().error(500, "业务导入失败");
}
}
execl 样例
3、导出样例
@ApiOperation(notes = "查询扩缩容导出Excel", value = "查询扩缩容导出Excel")
@GetMapping("/resourceToExcel")
public Object getScaleResourceToExcel(@RequestParam(name = "resourceType", required = false) @ApiParam(value = "资源类型") String resourceType,
@RequestParam(name = "status", required = false) @ApiParam(value = "状态") Integer status,
@RequestParam(name = "startTime", required = false) @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") @ApiParam(value = "开始时间", format = "yyyy-MM-dd HH:mm:ss", example = "2024-01-01 10:10:10") Date startTime,
@RequestParam(name = "endTime", required = false) @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") @ApiParam(value = "结束时间", format = "yyyy-MM-dd HH:mm:ss", example = "2024-01-01 10:10:10") Date endTime) throws IOException {
List<Scale> list = scaleService.getScaleResourceList(resourceType, status, startTime, endTime);
ExportParams exportParams = new ExportParams();
exportParams.setType(ExcelType.XSSF);
Workbook workbook = ExcelExportUtil.exportExcel(exportParams, Scale.class, list);
ByteArrayOutputStream byteOutputStream = new ByteArrayOutputStream();
workbook.write(byteOutputStream);
Map dataBase64 = ImmutableMap.of("filename","扩缩容.xlsx","data", Base64.encodeBase64String(byteOutputStream.toByteArray()));
return new HttpResponse<>().success(dataBase64);
}
文章来源:https://blog.csdn.net/yangchuang11/article/details/135283612
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!