问题标签 [itemprocessor]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Spring Batch @BeforeContext 执行失败
我在春季批次中有一个情况,我有多个项目处理器组成一个复合项目处理器。我需要在同一步骤中在两个处理器之间共享一些上下文数据。我找到了一个访问上下文的有效解决方案,如下所示。也就是说,有一个替代解决方案似乎更干净,但它使用@BeforeStepAnnotation,它永远不会被调用。如果可能,我想使用第二种解决方案。任何关于如何做到这一点的建议都非常感谢。
这有效:
这失败了:
spring-batch - 我可以使用 FlatFileItemWriter 在 Spring Batch 中编写多格式文件吗?
我正在读取一个多格式文件,使用FlatFileItemReader
并将每一行映射到其相应的 bean 类型ItemProcessor
并执行数据丰富。但是当我尝试使用 将这些记录写入文件FlatFileItemWriter
时,我无法BeanWrapperFieldExtractor
为不同的记录类型单独分配。我该如何解决这个问题?
输入文件格式
预期的输出文件格式
项目处理器
spring-batch - 在 SpringBatch 中使用 ClassifierCompositeItemProcessor 时,通过 StepBuilderFactory stream() 将文件名动态传递给 FlatFileItemWriter
我正在使用ClassifierCompositeItemProcessor
. 但是当使用StepBuilderFactory
流写入文件时,我无法Resource
动态传递文件名。文件名应该是相应的输入文件名。任何帮助将非常感激。
输入文件 1 (data-111111-12323.txt)
输入文件 2 (data-22222-23244.txt)
预期的输出文件 1 (data-111111-12323.txt)
预期输出文件 2 (data-22222-23244.txt)
步
处理器
作家
spring - 同一个 Spring Batch 步骤中的多个 ItemProcessor 和 ItemWriters
我可以使用单个ItemReader和多个子步骤编写 Spring Batch 步骤,每个子步骤都有一个ItemProcessor后跟一个ItemWriter吗?
我正在尝试实现这样的目标:
补充笔记
- 为避免不一致,我不希望将项目阅读两次。
- 第二个
ItemProcessor
需要过滤掉一些项目,这些项目应该由第一个编写ItemWriter
,而不是由第二个编写。
我相信这个问题与Spring Batch 不同:一个阅读器,多个处理器和编写器,因为我需要按顺序处理项目,而不是并行处理。
java - 如何知道它是否是 SpringBatch 的 ItemProcessor 中的最后一项
我有以下 ItemProcessor,我需要知道该项目是否是阅读器发送的最后一个项目。这可能吗?
流程是:
ItemReader
- 从数据库中读取行(预计数百万行)ItemProcessor
- 对每一行执行一些验证,发送到 webservice 并使用 webservice 响应执行更多验证。ItemWriter
- 从验证中写入数据库错误,并更改线路状态。
另一种可能的解决方案是 ItemReader 发送Line
带有大小的列表NUMBER_OF_LINES_TO_CALL_WEBSERVICE
,但我找不到有关如何修改JpaPagingItemReader
.
读者是JpaPagingItemReader
:
list - Spring-batch ItemProcessor 数据以列表的形式进行建模
我正在使用自定义 itemReader 从外部休息 API 读取数据,它工作得很好。但是,当使用 ItemProcessor 将数据处理到我的模型类中时,就会出现问题。不幸的是,API 响应是一个对象,其中嵌套了一个数组,这意味着我必须使用引用另一个类的列表来存储其中的数据。
StockDTO 数据类:
ProductDTO 数据类(列表数据):
模型类:
ItemProcessor<StockDTO, Stock>
我应该创建另一个名为 Product 的模型类以便我可以创建 ItemProcessor<ProductDTO, Product> 还是可以在不创建另一个处理器的情况下从 ItemProcessor<StockDTO, Stock> 获取所有列表项?谢谢你。
spring-batch - 如何通过在春季批处理中拆分一组列来读取一个csv文件并写入不同的表
例如
有一个 csv 文件,它有 20 列 id,name,....
我希望将前 10 列数据写入一个表中,就像其他 10 列数据在不同表中一样
如何在 Spring Batch 中使用 ItemReader、ItemWriter 来实现这一点
spring - 如何从具有动态值的 StoredProcedureItemReader bean 调用 postgres 函数来运行
我创建了一个StoredProcedureItemReader
,我想StoredProcedureItemReader
@Bean
从我的ItemProcessor
. 这是我的存储过程项阅读器 bean
这是我的实现ItemProcessor
}
这是我的 postgres 函数
我不知道如何将当前用户 ID 传递给我创建的这个程序,请帮助,谢谢
java - 在 Spring Batch 中更新已处理的项目
我有一个使用 ItemProcessor 处理项目的 Spring Batch 应用程序。
我想知道是否可以在处理项目后更新它,以便当它到达 ItemWriter 时,它会被更新。例如,我处理一个项目,然后我处理另一个可能需要编辑前一个项目的属性的项目。由于上一个项目尚未到达写入器,我无法对数据库进行更新,并且第一个项目在没有更新的情况下被写入