springBoot整合easyPOI
(excel数据的导入和导出)
1.创建springBoot项目(略)
2.导入Pom
<!--excel操作 springboot-easypoi-->
<dependency>
<groupId>cn.afterturn</groupId>
<artifactId>easypoi-spring-boot-starter</artifactId>
<version>4.1.2</version>
</dependency>
3.配置application.yml
spring:
main:
allow-bean-definition-overriding: true
#表示后发现的bean会覆盖之前相同名称的bean。
4.实体Bean
@Data
public class User implements Serializable {
@Excel(name = "编号",orderNum = "0")
private Integer id;
@Excel(name = "姓名",orderNum = "1")
private String name;
@Excel(name = "年龄",orderNum = "2")
private Integer age;
}
5.导入导出工具类ExcelUtils
package com.wlp.user.dto;
import cn.afterturn.easypoi.excel.ExcelExportUtil;
import cn.afterturn.easypoi.excel.ExcelImportUtil;
import cn.afterturn.easypoi.excel.entity.ExportParams;
import cn.afterturn.easypoi.excel.entity.ImportParams;
import cn.afterturn.easypoi.excel.entity.enmus.ExcelType;
import org.apache.commons.lang3.StringUtils;
import org.apache.poi.ss.usermodel.Workbook;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletResponse;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.net.URLEncoder;
import java.util.List;
import java.util.Map;
import java.util.NoSuchElementException;
/**
* @ClassName ExcelUtils
* @Description TODO
* @Author guoweixin
* @Version 1.0
*/
public class ExcelUtils {
/**
* excel 导出
*
* @param list 数据
* @param title 标题
* @param sheetName sheet名称
* @param pojoClass pojo类型
* @param fileName 文件名称
* @param isCreateHeader 是否创建表头
* @param response
*/
public static void exportExcel(List<?> list, String title, String sheetName, Class<?> pojoClass, String fileName, boolean isCreateHeader, HttpServletResponse response) throws IOException {
ExportParams exportParams = new ExportParams(title, sheetName, ExcelType.XSSF);
exportParams.setCreateHeadRows(isCreateHeader);