首页IT科技easyui表格updaterow后getchange(EasyExcel使用与步骤)

easyui表格updaterow后getchange(EasyExcel使用与步骤)

时间2025-07-09 02:11:57分类IT科技浏览5639
导读:一、导入依赖(3.1.0+版本不需要poi依赖)...

一               、导入依赖(3.1.0+版本不需要poi依赖)

<!-- easyExcel--> <dependency> <groupId>com.alibaba</groupId> <artifactId>easyexcel</artifactId> <version>3.1.1</version> </dependency>

二                     、写数据

1      、创建要写入的实体类(@ExcelProperty对应excel第一行的字段名)

package com.easyexcel.excel; import com.alibaba.excel.annotation.ExcelProperty; import lombok.Data; @Data public class Demo { @ExcelProperty("学生编号") private Integer sno; @ExcelProperty("学生姓名") private String sname; }

2           、 开始写入数据

首先是文件名和地址filename()

excel最下层的Sheet名称sheet()

进行写的集合doWrite()

创建对应的集合               ,然后进行赋值                     ,将内容写进入

package com.easyexcel; import com.alibaba.excel.EasyExcel; import com.alibaba.excel.write.builder.ExcelWriterBuilder; import com.easyexcel.excel.Demo; import org.junit.jupiter.api.Test; import org.springframework.boot.test.context.SpringBootTest; import java.util.ArrayList; import java.util.List; @SpringBootTest class EasyExcelApplicationTests { @Test void contextLoads() { List<Demo> list=new ArrayList<>(); for(int i=0;i<10;i++){ Demo demo=new Demo(); demo.setSno(i); demo.setSname("data"+i); list.add(demo); } String filename="D:/桌面/test.xlsx"; EasyExcel.write(filename, Demo.class).sheet("学生列表").doWrite(list); } }

3                      、运行结果

 效果如下:

 三         、读数据

1       、创建实体类      ,在@ExcelProperty添加index字段           ,表示所在列

@Data public class Demo { @ExcelProperty(value = "学生编号",index = 0) private Integer sno; @ExcelProperty(value = "学生姓名",index = 1) private String sname; }

2.创建Excel监听器

 继承AnalysisEventListener类                      ,实现invokedoAfterAllAnalysed方法         ,并且实现invokeHeadMap方法       ,该方法在右键-生成-实现方法中有

其中invoke是一行一行读

doAfterAllAnalysed是读完之后操作

invokeHeadMap是读表头

package com.easyexcel.ExcelListener; import com.alibaba.excel.context.AnalysisContext; import com.alibaba.excel.event.AnalysisEventListener; import com.easyexcel.excel.Demo; import java.util.Map; public class ExcelListener extends AnalysisEventListener<Demo> { /** * 一行一行读 * @param demo * @param analysisContext */ @Override public void invoke(Demo demo, AnalysisContext analysisContext) { System.out.println("---"+demo); } @Override public void doAfterAllAnalysed(AnalysisContext analysisContext) { } @Override public void invokeHeadMap(Map<Integer, String> headMap, AnalysisContext context) { System.out.println("表头="+headMap); } }

3.实现读的操作

首先创建要读取文件的路径filename

String filename="D:/桌面/test.xlsx";

 其中EasyExcel的read中比write多了一个ExcelListener用来监听                       ,内容显示在监听类进行读

EasyExcel.read(filename,Demo.class,new ExcelListener()).sheet().doRead();

 4.结果如下:

 首先是excel内容:

然后是读的结果 

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
win11无法运行英雄联盟(Win11打不开英雄联盟怎么办?Win11进不去英雄联盟的解决方法) mac 鼠标 滚轮(mac鼠标滚轮反了怎么设置? macOS鼠标滚轮方向相反的两种解决办法)