全网最全最简单使用easypoi导入导出Excel的操作手册(一)

您所在的位置:网站首页 easypoi导入excel到数据库 全网最全最简单使用easypoi导入导出Excel的操作手册(一)

全网最全最简单使用easypoi导入导出Excel的操作手册(一)

2023-08-23 13:03| 来源: 网络整理| 查看: 265

概况

今天做Excel导出时,发现了一款非常好用的POI框架EasyPoi,其 使用起来简洁明了。现在我们就来介绍下EasyPoi,首先感谢EasyPoi 的开发者 Lemur开源

easypoi 简介

easypoi 是为了让开发者快速的实现excel,word,pdf的导入导出,基于Apache poi基础上的一个工具包。

特性

基于注解的导入导出,修改注解就可以修改Excel

支持常用的样式自定义

基于map可以灵活定义的表头字段

支持一对多的导出,导入

支持模板的导出,一些常见的标签,自定义标签

支持HTML/Excel转换

支持word的导出,支持图片,Excel

常用注解@Excel注解

@Excel 注解是作用到Filed 上面,是对Excel一列的一个描述,这个注解是必须要的注解,其部分属性如下:

其使用如下,其中orderNum是指定该字段在Excel中的位置,name与Excel中对应的表头单元格的名称

db206fdf38a998836c3d18f3984b3b35_watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTQ1MzQ4MDg=,size_16,color_FFFFFF,t_70.png

@Excel(name = "主讲老", orderNum = "1") private String name;@ExcelCollection 注解

@ExcelCollection 注解表示一个集合,主要针对一对多的导出

比如一个老师对应多个科目,科目就可以用集合表示,作用在一个类型是List的属性上面,属性如下:

image

其使用如下所示。

@ExcelCollection(name = "学生", orderNum = "4") private List students;@ExcelEntity注解

@ExcelEntity注解表示一个继续深入导出的实体,是作用一个类型为实体的属性上面,其属性如下:

image

其使用如下所示。

@ExcelEntity(id = "major") private TeacherEntity chineseTeacher;@ExcelIgnore 注解

@ExcelIgnore 注解修饰的字段,表示在导出的时候补导出,被忽略。

@ExcelTarget 注解

@ExcelTarget注解作用于最外层的对象,描述这个对象的id,以便支持一个对象,可以针对不同导出做出不同处理,其作用在实体类的上,属性如下:

image

其使用如下:

@ExcelTarget("scoreIssueReqPOJO") public class ScoreIssueReqPOJO implements java.io.Serializable{}EasyPOI的使用1.引入依赖

1.SSM 项目,引入依赖如果spring的版本是4.x的话引入的easypoi的版本是3.0.1,如果spring是5.x的话引入easypoi的版本是4.0.0

cn.afterturn easypoi-base 4.0.0 cn.afterturn easypoi-web 4.0.0 cn.afterturn easypoi-annotation 4.0.0

2.Spring Boot 项目(2.x以上的版本,我demo的版本是2.1.3.RELEASE),引入依赖

cn.afterturn easypoi-spring-boot-starter 4.0.0

需要注意的是由于easypoi的依赖内部依赖原生的poi,所以,引入了easypoi的依赖之后,需要把原生的poi的依赖删掉

注解方式导出Excel导出测试的demo@Test public void testExportExcel() throws Exception { List courseEntityList = new ArrayList(); CourseEntity courseEntity = new CourseEntity(); courseEntity.setId("1"); courseEntity.setName("测试课程"); TeacherEntity teacherEntity = new TeacherEntity(); teacherEntity.setName("张老师"); teacherEntity.setSex(1); courseEntity.setMathTeacher(teacherEntity); List studentEntities = new ArrayList(); for (int i = 1; i


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3