我有一个非常简单的春季批次,它从表中更新一百万条记录。 由于它非常简单,我尝试仅实现一个更新表的 Tasklet。

但我想提交 10 条记录。 是否可以在 tasklet 中做到这一点,或者我是否被迫将 itemReader/ItemWriter 与块一起使用?

提前致谢。

#1楼 票数:1 已采纳

一个 tasklet 不是为了做到这一点而设计的。 应该使用 tasklet 来执行可以一次执行的任务。

如果您想用 10 条记录的事务更新您的百万条记录(我理解),正确的方法是使用读取-处理-写入步骤。

  ask by JavaLiker translate from so

未解决问题?本站智能推荐:

2回复

如何在Spring批处理中重试Tasklet?

如何重试方法调用程序任务,我知道如果块任务失败,则可以重试,并且可以设置退避策略,但是在方法调用程序任务xsd中,我找不到重试选项。 如果失败,是否还有其他选择可以重试该任务。
3回复

Tasklet 在 spring 批处理中删除表

我在批处理作业中有一些步骤可以做不同的事情。 但在开始所有这些步骤之前,我需要清理一张桌子。 有没有什么简单的方法可以编写一个直接从作业 xml 文件中删除表的 tasklet? 我使用 ibatis 作为 ORM
2回复

单个事务中的Spring批处理tasklet

我使用FlatFileItemReader创建了一个Spring批处理作业,它从分隔文件中读取数据,然后使用JdbcBatchItemWriter写入DB。 我的setp配置如下所示。 上面的配置为每100个开放单独的事务,因此如果在完成tasklet(步骤1)之前发生故障,那么我无法
1回复

Spring批处理在tasklet中执行动态生成的步骤

我有一个春季批处理工作,执行以下操作... 步骤1.创建需要处理的对象列表 步骤2.根据步骤1中创建的对象列表中的项目数创建步骤列表。 步骤3.尝试执行步骤2中创建的步骤列表中的步骤。 执行x步骤在executeDynamicStepsTasklet()中完成。 虽然代
1回复

Spring批处理将SQL脚本作为Tasklet运行

Spring Batch是否支持将SQL脚本作为Tasklet的一部分执行? 以下是我计划使用Spring Batch开发的步骤序列。 对于步骤2和4,我需要按顺序运行一堆sql语句。 如何完成运行SQL脚本? 读取csv文件并验证内容 如果内容有效,请执行删除现有表
1回复

Spring批处理动态提交间隔

我有一个带有平面文件的Spring Batch应用程序作为项目读取器。 该单位包含两种不同类型的记录。 在我的块的定义中,我必须指定一个动态提交间隔。 每次读取新类型的记录时,应用程序都必须提交。 范例: 我怎样才能做到这一点 ?
1回复

spring 批处理:查询 tasklet 中存储过程结果的有效方法

我的目标是在 spring 批处理 tasklet 中使用自定义行映射器查询存储过程(sql server)的结果。 我正在使用 Spring Boot(版本 2.2.2.RELEASE)和 Spring Batch(4.2.1.RELEASE)。 例子: 存储过程: 自定义行映射器:
1回复

Spring 批处理:Tasklet 的测试用例 - 从 Test 类调用时,Key 未出现在实际类中

我正在尝试学习 Batch 和 Tasklet。 我正在为 spring 批处理中的 Tasklet 代码编写测试用例。 我正在测试类中设置映射并进行调试,实际类没有我从测试类传递的密钥。 MyEventTasklet.java MyEventTaskletTest.java 我不确