easyExcel导入失败提示用户第几行有误并回滚数据

思路:

        在controller定义一个map,将map传入excel监听器,在监听器中处理excel的数据,读取到某一行出现错误就将错误提示信息存入map并抛出一个异常给service。在service方法上开启事务,并将异常出实现数据回滚,controller将异常try..catch,在catch中返回map

controller:

思路:在service做数据回滚,在控制层做错误提示信息返回,将map到service

参数说明:

        outmap:用来存放返回给前端的提示信息

        file:excel文件

 

Service:

思路:添加@Transational注解,将map传入监听器,监听器抛出异常就回滚数据。

说明:我在监听器中自动装配不到持久层roleDao,所以在监听器中重写构造方法来接收。你们可以装配到就不用我这么麻烦了。

参数说明:

        in:Excel文件流

        ExcelModel.class:Excel对应的实体类

        RoleListener:监听器(数据的写入都在监听器中完成)

 

监听器:

说明:代码太多,只截关键部分,明白那个意思就行

参数说明:

        ExcelModelVo:excel对应的实体类,一个实体类代表一行数据

        analysisContext:每行数据的基本信息,例如可以获取当前读取的行数

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值