发布
登录
注册
Java批量导入时,如何去除重复数据并返回结果?
众说纷纭频道

图灵联邦

恒河沙
关注

图灵联邦

0

评论

0

点赞

概述

本篇是 POI系列 的最后一篇。传送门 Java 开发中如何用 POI 优雅的导出 Excel 文件, Java 开发中如何用 POI 优雅的导入 Excel 文件.

场景分析

大多数开发中是不需要重复的数据的, 所以后端开发中需要做去重操作, 而且为了更加友好的交互, 我们需要将导入失败的数据返回给用户。一般数据重复有以下几个场景:

Excel 中本身存在重复数据, 即本次导入存在重复数据;

数据库中已经存在了该条数据, 即历史导入存在重复数据;

为了减轻数据库的压力, 这里在设计中引入缓存 Redis 。

整体思路如下:

bitmap 判断是否存在;

内存中数据是否重复;

redis 和 mysql 批量插入;

数据库中插入失败处理;

代码实现

为简化无聊的 CRUD 编写, 引入了 mybatis-plus 的逆向 generator 插件。

pom.xml

application.yml

mysql-schema

generator

Redis

User.java

.HashUtils.java

核心逻辑

场景测试

最后

本文到此结束,感谢阅读。如果您觉得不错,点赞+关注一波呗!

本文内容来源于用户投稿,如有侵权请联系官方删除

发布

评论 0