官方大胆挑战!Spring Batch批处理8000w条CSV数据,助你高效落地!
需求
第三方给了我一个800w条数据的CSV文件,让我们写入到数据库当中!
- 优先考虑Spring Batch 批处理框架
官方中文文档
数据流转架构分析
Spring Batch 是什么、可以干什么、优势在哪…?
上网自行查阅 谢谢!
实战开始
代码结构
sql 脚本
表结构.sql
配置job的类
BatchConfig
- 就不一 一截图了
实体
ProjectUser
批处理-简单操作
BatchWeb
开启对Validator依赖包提供校验注解支持,来校验ItemReader读取到的数据是否满足要求
CsvBeanValidator
##监听器实现JobExecutionListener接口
CsvJobListener
属性赋值操作 作用域:读
CsvLineMapper
对数据加工 然后并返回
CsvValidatingItemProcessor
启动类
YqmmBatchApplication
配置文件yml
application.yml
模拟:>>>>800w条数据的CSV文件
project_user.csv
启动项目
请求接口
- http://localhost:11111/batch/execute-jod