##### 2.3.4 Excel导入介绍
有导出就有导入,基于注解的导入导出,配置配置上是一样的,只是方式反过来而已,比如类型的替换 导出的时候是1替换成男,2替换成女,导入的时候则反过来,男变成1 ,女变成2,时间也是类似 导出的时候date被格式化成 2017-8-25 ,导入的时候2017-8-25被格式成date类型 下面说下导入的基本代码,注解啥的都是上面讲过了,这里就不累赘了
~~~
@Test
public void test2() {
ImportParams params = new ImportParams();
params.setTitleRows(1);
params.setHeadRows(1);
long start = new Date().getTime();
List<MsgClient> list = ExcelImportUtil.importExcel(
new File(PoiPublicUtil.getWebRootPath("import/ExcelExportMsgClient.xlsx")),
MsgClient.class, params);
System.out.println(new Date().getTime() - start);
System.out.println(list.size());
System.out.println(ReflectionToStringBuilder.toString(list.get(0)));
}
~~~
基本是写法也很简单,ImportParams 参数介绍下
| 属性 | 类型 | 默认值 | 功能 |
| --- | --- | --- | --- |
| titleRows| int | 0| 表格标题行数,默认0|
| headRows | int| 1 | 表头行数,默认1|
| startRows| int| 0|字段真正值和列标题之间的距离 默认0|
| ***keyIndex***| int| 0 | ***主键设置,如何这个cell没有值,就跳过 或者认为这个是list的下面的值*** 这一列必须有值,不然认为这列为无效数 |
| startSheetIndex| int | 0| 开始读取的sheet位置,默认为0|
| sheetNum| int| 1| 上传表格需要读取的sheet 数量,默认为1|
| needSave| boolean| false| 是否需要保存上传的Excel|
| needVerfiy| boolean| false| 是否需要校验上传的Excel |
| saveUrl | String| "upload/excelUpload"| 保存上传的Excel目录,默认是 如 TestEntity这个类保存路径就是 upload/excelUpload/Test/yyyyMMddHHmss***\*** 保存名称上传时间*五位随机数 |
| verifyHanlder| IExcelVerifyHandler| null| 校验处理接口,自定义校验 |
| lastOfInvalidRow | int| 0 | 最后的无效行数,不读的行数 |
| readRows | int| 0| 手动控制读取的行数|
| importFields| String\[\]| null | 导入时校验数据模板,是不是正确的Excel|
| keyMark | String| ":"| Key-Value 读取标记,以这个为Key,后面一个Cell 为Value,多个改为ArrayList|
| readSingleCell | boolean | false| 按照Key-Value 规则读取全局扫描Excel,但是跳过List读取范围提升性能 仅仅支持titleRows + headRows + startRows 以及 lastOfInvalidRow|
| dataHanlder | IExcelDataHandler| null| 数据处理接口,以此为主,replace,format都在这后面
- 1.前传
- 1.1前言
- 1.2 Autopoi 介绍
- 1.3 使用
- 1.4 测试项目
- 1.5 快速文档
- 1.6 示例
- 1.6.1 单表数据导出多表头示例
- 单表数据多表头导入注意bak
- 1.6.2 单表数据导出多sheet示例
- 1.6.3 excel根据模板导出
- 1.6.4 一对多导出needMerge示例
- 1.6.5 大数据导出示例
- 1.7 导出自定义选择列导出
- 2. Excel 注解版
- 2.0 @excel注解的使用
- 2.1 Excel导入导出
- 2.2 注解
- 2.3 注解导出,导入
- 2.3.1 对象定义
- 2.3.2 集合定义
- 2.3.3 图片的导出
- 2.3.4 Excel导入介绍
- 2.3.5 Excel导入小功能
- 2.3.6 图片的导入
- 2.3.7 Excel多Sheet导出
- 2.4 注解变种-更自由的导出
- 2.5 Map导入,自由发挥
- 2.6 Excel的样式自定义
- 2.7 如何自定义数据处理
- 2.8 Excel导入校验(暂不支持)
- 2.9 Excel 大批量读取
- 2.10 Excel大数据导出
- 2.11 groupname和ExcelEntity的name属性
- 3. Excel 模板版
- 3.1 模板 指令介绍
- 3.2 基本导出
- 3.3 模板当中使用注解
- 3.4 图片导出
- 3.5 横向遍历
- 4. Excel<->Html
- 4.1 Excel 的Html预览
- 4.2 html转Excel更神奇的导出
- 5. Word
- 5.1 word模板导出
- 6. PDF
- 7. Spring MVC
- 7.1 View 介绍
- 7.2 大数据导出View的用法
- 7.3 注解导出View用法
- 7.4 注解变种Map类型的导出View
- 7.5Excel模板导出View
- 7.6 PoiBaseView.render view的补救
- 8.问题归档
- 9.大数据量处理
- 10.autopoi升级4.0版本修改记录