框架自带的easyExcel导入如何实现数据校验,并且将校验失败的数据导出

Blade 未结 1 27
cutler
cutler 剑者 15小时前
悬赏:10

一、该问题的重现步骤是什么?

  1. 目前框架自带的excel导入方法(集成easyExcel)感觉有点太简单了,想实现的功能为:

    (1)模版为已经存在的excel文件,直接导出;使用框架的模版导出方法导出的excel无法太简单,无法满足需求;

    (2)导入时,实现数据的自动校验,并且将失败原因置于一行的末尾,最后可以实现失败数据的导出;
    (3)可以实现相关字段的自动转换,比如身份证件,性别等一些字典;


2. 刚开始做的时候,是用的easypoi,导入excel只要设置ImportParams中的verifyhandler(校验)和datahandler(转换)就可以实现,而且还可以将失败数据直接导出,很方便。但是这个框架一直报一个问题。解决不了,为什么系统不能使用easypoi。只能换easyexcel

导入异常.png

3.可是框架自带的easyexcel导入代码太简单,文档也没说得很清楚,不知道怎么用框架的easypoi实现上面的需求。
4.希望大佬好好解答下,谢谢啦!


二、你期待的结果是什么?实际看到的又是什么?

  1. 可以使用easypoi,运行ExcelImportUtil.importExcelMore(inputStream, PersonImport.class, importParams);时报错;

  2. 实在不行可以用框架的easyexcel代替,但是不知道怎么实现。

三、你正在使用的是什么产品,什么版本?在什么操作系统上?

Bladex-Boot,4.3.0,windows

四、请提供详细的错误堆栈信息,这很重要。

贴下easypoi的报错,难道系统不能使用easypoi?

导入异常1.png
导出异常2.png
导出异常3.png

五、若有更多详细信息,请在下面提供。

1条回答
  • 是的,ExcelUtil只做了最常用的封装,使用场景仅限最简单的数据导入导出。

    满足不了的场景你完全可以用原生的方法来操作,具体见官网文档,官方例子怎么操作你就按照文档来操作便可:https://easyexcel.opensource.alibaba.com/

    作者追问:12小时前

    这个集成easypoi报错的问题是什么原因呢?加了hibernate校验的依赖,全部都没用

    0 讨论(0)
提交回复