小编给大家分享一下如何处理Java中easypoi导入excel文件列名相同的问题,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨方法吧!
Easypoi是什么
Easypoi 功能如同名字easy,主打的功能就是容易,让一个没接触过poi的人员,就可以方便的写出Excel导出、Excel模板导出、Excel导入、Word模板导出,通过简单的注解和模板语言(熟悉的表达式fe语法),完成以前复杂的写法
开源地址:https://gitee.com/lemur/easypoi
独特的功能
更多特性与功能详解:easypoi官网说明
官方demo
官网实例工程:easypoi-test
导入
1. 指定模板导入
在导入指定Excel模板的过程中,可能会碰到列名重复的问题,当我们使用Easypoi的注解方式进行导入时,会发现出现丢失数据的情况,原因是源码在解析注解映射关系的时候,使用的map进行存储,当实体的注解存在相同名称时,key会被重新覆盖,导致数据列丢失,如图通过添加fixedIndex属性得以解决:
需要注意的是:fixedIndex是从0开始
Excel文件如图:
2. Map自由导入
ImportParams importParams = new ImportParams(); importParams.setTitleRows(3);//标题行 importParams.setHeadRows(1);//表头行 importParams.setStartSheetIndex(0);//开始的sheet下标 importParams.setKeyIndex(null);//设置读取空值 File file = new File("/file/file.xlsx");//文件路径 try { List<Map> list = ExcelImportUtil.importExcel(file, Map.class, importParams); } catch (Exception e) { e.printStackTrace(); }
存在的问题
看完了这篇文章,相信你对如何处理Java中easypoi导入excel文件列名相同的问题有了一定的了解,想了解更多相关知识,欢迎关注亿速云行业资讯频道,感谢各位的阅读!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。