easypoi方便简单的写出Excel导出,Excel模板导出,Excel导入,Word模板导出,通过简单的注解和模板 语言(熟悉的表达式语法),完成以前复杂的写法
使用easypoi
引入依赖
<dependency><groupId>cn.afterturn</groupId><artifactId>easypoi-base</artifactId><version>3.2.0</version>
</dependency><dependency><groupId>cn.afterturn</groupId><artifactId>easypoi-web</artifactId><version>3.2.0</version>
</dependency><dependency><groupId>cn.afterturn</groupId><artifactId>easypoi-annotation</artifactId><version>3.2.0</version>
</dependency>
注解
-
@Excel 作用到filed上面,是对Excel一列的一个描述
-
@ExcelCollection 表示一个集合,主要针对一对多的导出,比如一个老师对应多个科目,科目就可以用集合表示
-
@ExcelEntity 表示一个继续深入导出的实体,但他没有太多的实际意义,只是告诉系统这个对象里面同样有导出的字段
-
@ExcelIgnore 和名字一样表示这个字段被忽略跳过这个导导出
-
@ExcelTarget 这个是作用于最外层的对象,描述这个对象的id,以便支持一个对象可以针对不同导出做出不同处理
@ExcelTarget
//标识这个类是可以被easypoi导入导出的类value : id唯一标识height:设置单元格高度width:这只单元格宽度@ExcelTarget(value = "users") // 唯一标识作用public class User implements Serializable {}
@Excel
//用在属性上面,对表格列的设置name:表格的列名orderNum:属性在列中的顺序format:导入导出时间的格式suffix:设置数据的后缀width:设置表格的宽度@Excel(name="编号",orderNum = "0")private String id;@Excel(name="姓名" ,orderNum = "1")private String name;@Excel(name="年龄",suffix = "岁")private Integer age;@Excel(name = "生日",width = 30,format = "yyyy-MM-dd HH:mm:ss")private Date birthday;