正文开始 关闭忽略空行,防止第一行是空跳过校验ignoreEmptyRow(false)。此处如果未关闭,第一行为空时,不会进入invokeHeadMap方法 EasyExcel.read(file.getInputStream(), **.class,newKnowledgeListener(kgService, classificationRepository, issuesRepository, syncNeo4j, algorithmService)) .ignoreEmptyRow(false).sheet(...
*/@SneakyThrows@OverridepublicvoidinvokeHeadMap(Map<Integer,String>headMap,AnalysisContext context){//单行表头验证方式List excelTitle=easyExcelValidator.getExcelTitle(headMap,context);easyExcelValidator.validatorSimpleExcelHeads(BindBoxRecordTest.class.getDeclaredFields(),excelTitle,"prizeTestExceptionKey",2);...
4.EasyExcelUtils类:使用@Component注解修饰,使类加载进spring容器中进行管理;数据的类型使用Object进行定义,定义一个Mesage类用于记录解析和验证表头是否与模板一致的信息;创建EasyExcelUtils时,传递一个接收解析excel类的class对象,使用注解ExcelProperty获取到类的字段,并与excel中的进行比对,验证导入的excel是否符合要求。
EasyExcel表头校验方法,(校验表头在监听器执行之前执行) 1.所有的操作都在监听器里面进行public Map<String, String> map = new HashMap<>(); List<DictEeVo> list = new ArrayList<>(); @Override public void invokeHeadMap(Map<Integer, String> headMap, AnalysisContext context) { String s = headMap....