『』一个关于“程序猿”的好消息—— Spring Batch入门知识

Spring Batch本身提供了许多开箱即用的ItemReader与ItemWriter实现 。Spring Batch 4针对这些组件又提供了Builder实现 , 用户可以很方便的通过Builder模式来使用这些组件 , 接下来我们就开始学习 。
本章 , 我们重点讨论以下几种ItemReader和ItemWriter的使用
ItemReader
1、 FlatFileItemReader
对于FlatFileItemReader , 官方示例已给出代码实现 。我们这里不多赘述
『』一个关于“程序猿”的好消息—— Spring Batch入门知识
文章图片

文章图片

2、 JpaPagingItemReader
以JPQL方式读取海量数据库记录 , 为避免内存泄漏 , 以分页方式读取
『』一个关于“程序猿”的好消息—— Spring Batch入门知识
文章图片

文章图片

3、 RepositoryItemReader
以Spring Data JPA(Spring Data Repository)方式读取数据 , 传入参数包含:PagingAndSortingRepository对象 , 结果集排序方式 , 调用目标方法等 。返回Spring Data JPA方法实现执行结果 。比如 , 对于UserReaderRepository:
『』一个关于“程序猿”的好消息—— Spring Batch入门知识
文章图片

文章图片

接口中定义findAllByFirstNameLike方法 , 查询FirstName以特定字符开始的数据库记录 , 因此 , 我们的RepositoryItemReader定义如下
『』一个关于“程序猿”的好消息—— Spring Batch入门知识
文章图片

文章图片

ItemWriter
1、 JdbcBatchItemWriter
利用PreparedStatement批处理特性保存数据 。
『』一个关于“程序猿”的好消息—— Spring Batch入门知识
文章图片

文章图片

2、 RepositoryItemWriter
调用Spring Data JPA (Spring Data CrudRepository)指定方法实现 , 将数据保存到目标数据库中 。比如 , 我们定义PeopleCrudRepository接口
我们调用CrudRepository中的默认save方法实现
【『』一个关于“程序猿”的好消息—— Spring Batch入门知识】『』一个关于“程序猿”的好消息—— Spring Batch入门知识
文章图片

文章图片


    推荐阅读