Spring Batch ItemReader读取多行和动态块大小

肖恩·贾格

在平面文件中,有一种情况可以处理3M条以上的记录,而我们希望一次读取3k条记录,然后再将其处理为写入器,是否有更好的处理方法?除此之外,我们还有其他一些条件,因为我们的平面文件格式如下:

用户ID1,事务1用户ID1,事务2用户ID1,事务3用户ID2,事务1用户ID2,事务3

一个用户可能有很多交易,项目读取器会将一个用户的交易读取到不同的线程中,我们希望将该用户的所有交易都放在同一线程中,因此我们想动态地更改块大小,是否有更好的选择的方式吗?

卢卡·巴索·里奇(Luca Basso Ricci)

要回答您的问题:
是的,您可以commit-size使用scope#{}语法替换步骤和属性或声明custom来进行更改completion-policy

但是我认为您不需要更改,commit-size而是实现一个自定义阅读器,该阅读器可以为单个用户的所有事务构建一个域对象。

class UserTransaction {
  String transactionId;
}
class UserWithTransaction {
  String user;
  List<UserTransaction> transactions;
}

class UserWithTransactionReader implements ItemReader<UserWithTransaction> {...}

网上(以及SO中的此处)有许多自定义阅读器实现,这些实现都是通过CSV文件构建复杂的对象(如此此处

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Spring Batch ItemReader读取的行数

来自分类Dev

从单个 Spring Batch ItemReader 插入和更新

来自分类Dev

从流中读取而不是在Spring Batch ItemReader中读取文件

来自分类Dev

Spring Batch-读取多行日志消息

来自分类Dev

Spring Batch-读取多行日志消息

来自分类Dev

Spring Batch和Spring TaskScheduler

来自分类Dev

在spring-batch中动态读取文件

来自分类Dev

用于动态块大小的Spring Batch自定义完成策略

来自分类Dev

Spring Batch:自定义ItemReader

来自分类Dev

Spring Batch ItemReader处理树结构文件

来自分类Dev

Spring Batch:创建一个ItemReader来从Web服务读取xml文件

来自分类Dev

Spring Batch-无法读取的文件

来自分类Dev

Spring Batch Job从多个来源读取

来自分类Dev

Spring Batch-动态工作选择

来自分类Dev

Spring Batch读取不同的CSV文件和XML输出

来自分类Dev

当 Spring Batch 读取和使用 JobRepository 持久化的数据时

来自分类Dev

Spring Batch:使用哪种ItemReader实现来实现高容量和低延迟

来自分类Dev

我们可以编写没有ItemReader和ItemWriter的Spring Batch作业吗

来自分类Dev

使用注解的 Spring 集成和 Spring Batch [Spring-Batch-Integration]

来自分类Dev

Spring Batch:聚合记录和写入计数

来自分类Dev

在Spring Batch项目中实现ItemReader时,如何打开Reader?

来自分类Dev

Spring Batch的ItemReader + RabbitMQ的 - 没有 '排队' 规定

来自分类Dev

在Spring Batch中调用ItemReader,ItemProcessor,ItemWriter的构造函数时?

来自分类Dev

Spring Batch线程安全的ItemReader(过程指示器模式)

来自分类Dev

Spring Batch:根据itemReader中的结果执行作业

来自分类Dev

如何在 Spring Batch 4 中获取 ItemReader 中的 JobExecutionId

来自分类Dev

读取具有 1M 行和 900Mo 大小的 csv 文件时,Spring Batch OutOfMemoryException

来自分类Dev

Spring Batch有关面向块的步骤与现实的文档?

来自分类Dev

Spring Batch 中来自环境变量的网格大小

Related 相关文章

  1. 1

    Spring Batch ItemReader读取的行数

  2. 2

    从单个 Spring Batch ItemReader 插入和更新

  3. 3

    从流中读取而不是在Spring Batch ItemReader中读取文件

  4. 4

    Spring Batch-读取多行日志消息

  5. 5

    Spring Batch-读取多行日志消息

  6. 6

    Spring Batch和Spring TaskScheduler

  7. 7

    在spring-batch中动态读取文件

  8. 8

    用于动态块大小的Spring Batch自定义完成策略

  9. 9

    Spring Batch:自定义ItemReader

  10. 10

    Spring Batch ItemReader处理树结构文件

  11. 11

    Spring Batch:创建一个ItemReader来从Web服务读取xml文件

  12. 12

    Spring Batch-无法读取的文件

  13. 13

    Spring Batch Job从多个来源读取

  14. 14

    Spring Batch-动态工作选择

  15. 15

    Spring Batch读取不同的CSV文件和XML输出

  16. 16

    当 Spring Batch 读取和使用 JobRepository 持久化的数据时

  17. 17

    Spring Batch:使用哪种ItemReader实现来实现高容量和低延迟

  18. 18

    我们可以编写没有ItemReader和ItemWriter的Spring Batch作业吗

  19. 19

    使用注解的 Spring 集成和 Spring Batch [Spring-Batch-Integration]

  20. 20

    Spring Batch:聚合记录和写入计数

  21. 21

    在Spring Batch项目中实现ItemReader时,如何打开Reader?

  22. 22

    Spring Batch的ItemReader + RabbitMQ的 - 没有 '排队' 规定

  23. 23

    在Spring Batch中调用ItemReader,ItemProcessor,ItemWriter的构造函数时?

  24. 24

    Spring Batch线程安全的ItemReader(过程指示器模式)

  25. 25

    Spring Batch:根据itemReader中的结果执行作业

  26. 26

    如何在 Spring Batch 4 中获取 ItemReader 中的 JobExecutionId

  27. 27

    读取具有 1M 行和 900Mo 大小的 csv 文件时,Spring Batch OutOfMemoryException

  28. 28

    Spring Batch有关面向块的步骤与现实的文档?

  29. 29

    Spring Batch 中来自环境变量的网格大小

热门标签

归档