写Excel
注解
使用注解很简单,只要在对应的实体类上面加上注解即可。
ExcelProperty
用于匹配excel和实体类的匹配,参数如下:
名称 | 默认值 | 描述 |
---|---|---|
value | 空 | 用于匹配excel中的头,必须全匹配,如果有多行头,会匹配最后一行头 |
order | Integer.MAX_VALUE | 优先级高于value ,会根据order 的顺序来匹配实体和excel中数据的顺序 |
index | -1 | 优先级高于value 和order ,会根据index 直接指定到excel中具体的哪一列 |
converter | 自动选择 | 指定当前字段用什么转换器,默认会自动选择。写的情况下只要实现com.alibaba.excel.converters.Converter#convertToExcelData(com.alibaba.excel.converters.WriteConverterContext<T>) 方法即可 |
ExcelIgnore
默认所有字段都会和excel去匹配,加了这个注解会忽略该字段
ExcelIgnoreUnannotated
默认不管加不加ExcelProperty
的注解的所有字段都会参与读写,加了ExcelIgnoreUnannotated
注解以后,不加ExcelProperty
注解的字段就不会参与
DateTimeFormat
日期转换,用String
去接收excel日期格式的数据会调用这个注解,参数如下:
名称 | 默认值 | 描述 |
---|---|---|
value | 空 | 参照java.text.SimpleDateFormat 书写即可 |
use1904windowing | 自动选择 | excel中时间是存储1900年起的一个双精度浮点数,但是有时候默认开始日期是1904,所以设置这个值改成默认1904年开始 |
NumberFormat
数字转换,用String
去接收excel数字格式的数据会调用这个注解。
名称 | 默认值 | 描述 |
---|---|---|
value | 空 | 参照java.text.DecimalFormat 书写即可 |
roundingMode | RoundingMode.HALF_UP | 格式化的时候设置舍入模式 |
参数
概念介绍
WriteWorkbook
可以理解成一个excelWriteSheet
理解成一个excel里面的一个表单WriteTable
一个表单里面如果有多个实际用的表格,则可以用WriteTable