导入这个依赖
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>easyexcel</artifactId>
<version>3.0.5</version>
</dependency>
参考这个网址
读Excel · 语雀 (yuque.com)
https://www.yuque.com/easyexcel/doc/read
@RequestMapping("/uploadByExcel")
public String uploadByExcel(@RequestParam("fileExcel")MultipartFile fileExcel) throws IOException {
EasyExcel.read(fileExcel.getInputStream(),UserModel.class,new PageReadListener(userInfos->{
System.out.println(userInfos);
})).sheet().doRead();
return fileExcel.getOriginalFilename();
}
@RequestMapping("/writeByExcel")
public String upLoadwriteByExcel() throws IOException {
EasyExcel.write("C:\\Users\\user\\Desktop\\info.xls", UserModel.class)
.sheet("模板")
.doWrite(() -> {
// 分页查询数据
return data();
});
return "success";
}
private List<UserModel> data() {
return Arrays.asList(new UserModel("5","小王八","20","男"));
}
package com.javasm.listener;
import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.event.AnalysisEventListener;
import com.alibaba.excel.read.processor.AnalysisEventProcessor;
import com.javasm.model.UserModel;
import java.util.Map;
public class ExcelListener extends AnalysisEventListener<UserModel> {
@Override
public void invoke(UserModel userModel, AnalysisContext context) {
System.out.println("++++行内容"+userModel);
}
@Override
public void doAfterAllAnalysed(AnalysisContext analysisContext) {
System.out.println("++++++" +analysisContext);
}
@Override
public void invokeHeadMap(Map<Integer, String> headMap, AnalysisContext context) {
System.out.println("++++表头+++"+headMap);
}
}
package com.javasm.model;
import com.alibaba.excel.annotation.ExcelProperty;
public class UserModel {
@ExcelProperty(value = "编号",index = 0)
private String uid;
@ExcelProperty(value = "姓名",index = 1)
private String uname;
@ExcelProperty(value = "年龄",index = 2)
private String uage;
@ExcelProperty(value = "性别",index = 3)
private String usex;
@Override
public String toString() {
return "UserModel{" +
"uid='" + uid + '\'' +
", uname='" + uname + '\'' +
", uage='" + uage + '\'' +
", usex='" + usex + '\'' +
'}';
}
public UserModel() {
}
public UserModel(String uid, String uname, String uage, String usex) {
this.uid = uid;
this.uname = uname;
this.uage = uage;
this.usex = usex;
}
public String getUid() {
return uid;
}
public void setUid(String uid) {
this.uid = uid;
}
public String getUname() {
return uname;
}
public void setUname(String uname) {
this.uname = uname;
}
public String getUage() {
return uage;
}
public void setUage(String uage) {
this.uage = uage;
}
public String getUsex() {
return usex;
}
public void setUsex(String usex) {
this.usex = usex;
}
}










