Spring batch 如何开始使用Spring Batch?

我正在努力学习,但这个过程很混乱。评论如 你可以对它有一个很好的了解 如何通过检查 中的单元测试 org.springframework.batch.sample 包(在src/main/java中)和 配置在 src/main/resources/jobs 这并不是很有帮助。 我还发现示例项目非常复杂(17个非空名称空间,包含109个类)!是否有一个更简单的地方开始使用Spring Batch 几点提示: (通过archive.org) (通过archive.org) 在您开始使用S

Spring batch 具有唯一jobParamIncrementer的Spring批处理作业

我已经为简单查询编写了一个spring批处理应用程序。这在第一次使用某些作业Id时可以正常工作,但对于下一次执行,它需要新的作业Id。对于这个已编写的jobParamIncrementer类,仍然会获得bean defn not found异常。我不太明白发生了什么。请帮帮我 下面是堆栈跟踪。 Job Paramater {run.id=1370337260531} Jun 4, 2013 2:44:20 PM org.springframework.context.support.Abstra

Spring batch 如何在实现项读取器时读取非重复元素?

我有一个场景,我必须读取如下xml: <MovieList language="English"> <Movie>..<Movie> <Movie>..<Movie> </MovieList> .. .. 我必须阅读电影标签,这是一个复杂的对象(标签),并插入到电影表的细节。我已经将fragmentRootElementName设置为电影,并且能够完全读取电影标签。然而,我无法读取language属性,它不是重

Spring batch Spring Batch ItemWriter:读取和处理所有记录后的后处理

我的工作中有一个步骤是使用ItemReader/ItemProcessor/ItemWriter。 在ItemWriter中,我需要为每条记录增加一个变量,以便知道文件中记录的行号。现在,我正在使用一个静态变量,当我处理单个文件时,它可以很好地完成我想要做的事情。问题是:我可以重新启动我的作业(使用不同的参数),当我处理另一个文件而之前没有重新启动我的应用程序时,我的变量在静态时不会重新启动到初始值,我可以将计数器设置为“33”而不是1 我想我可以使用stepContext来解决这个问题,而不是

Spring batch Spring批处理编码的压缩文件

我正在研究如何使用spring批处理编码压缩文件中的记录。这些记录是可变长度的,其中包含编码的嵌套可变长度数据字段 我不熟悉Spring和Spring批处理,这就是我计划如何构建批处理配置的方法 ItemReader需要将压缩(*.gz)文件输入流中的一条记录读取到POJO(字节数组)中,该记录的长度将包含在流的前两个字节中 ItemProcessor将解码字节数组并将信息存储在POJO的相关属性中 ItemWriter将填充数据库 我最初的问题是理解如何设置ItemReader,我看过一些

Spring batch 如何在spring批处理读取器中记录导致运行时异常的数据

我需要在reader中捕获运行时异常并跳过它们,所以我使用skipPolicy来实现这一点,如下所示。此外,还需要记录导致运行时异常的数据。我在reader中有一些转换逻辑,但ItemReadListener没有访问项信息的权限。我不确定在哪里/如何访问此类数据信息 我是否应该将转换逻辑从读取器移动到处理器,然后实现ItemProcessListener来记录错误项?在这种情况下,是否应使用以下步骤1方法?提前谢谢 @Bean public Step step1() { return s

Spring batch spring批处理示例检查更新是否存在记录,否则插入

有两张表,分别是表1和表2。 必须从表1中读取数据并将数据保存到表2中。 在保存到表2中之前,必须检查记录是否存在于表2中,如果存在,则更新,否则插入 我不熟悉SpringBatch,并尝试使用它。我不知道该怎么做。我在网上看到的例子都是从平面文件到数据库的。 没有发现它做了类似于上面的事情。非常感谢您的帮助。下面是您需要的帮助 它与Spring批处理无关编写一个自定义ItemWriter(只是一个伪代码) 类ItemWriter实现ItemWriter{ 公共无效写入(列表l){ 适用于(最

Spring batch 批处理使用的spring云数据流是否只需要skipper?

我试图了解spring云数据流的体系结构。特别是使用它来编排纯粹的批处理管道。我已经在k8s中部署了所有组件,并注意到我可以在没有中间件(Kafka/RabbitMQ)的情况下部署skipper组件,并通过服务器组件成功运行批处理作业 根据我看到的文档,skipper用于编排流媒体作业。skipper(以及随后的Kafka/RabbitMQ中间件)是否是纯批处理作业或任务所需的spring云数据流?是的,这是正确的。当您仅运行任务(批处理)应用程序时,不需要Spring Cloud Skippe

Spring batch 在Spring批处理中存储文件名以发送电子邮件

我正在Spring Batch中编写一个应用程序来实现这一点: 逐个文件读取文件夹的内容。 重命名文件并将其移动到多个文件夹中。 发送两封电子邮件:一封处理成功的名称文件,另一封发送错误的名称文件。 我已经得到1。二,。但我需要指出3点。?如何使用Spring Batch以优雅的方式存储已发送到writer方法的文件名 您可以使用执行上下文来存储文件名的值,这些文件名会被处理,也会因错误而失败 我们将有一个列表/类似的数据结构,其文件名位于业务逻辑之后。下面是一个实现StepExecutionL

Spring batch 如何将上一步数据传递给分区器

我试图运行面向分区的作业,但在访问stepExecutionContext存储的数据时遇到问题。这是我的工作定义 <batch:job id="job1" restartable="false" incrementer="idIncrementer"> <batch:step id="readwritestep" next="partitionStep"> <batch:tasklet transaction-manager="transac

Spring batch Spring批处理-需要在itemProcessor/itemWriter中使用对象,但不能将其持久化

我需要访问itemProcessor和itemWriter中的对象,但我不想将其保存在executionContext中。我将在预处理步骤中读取此对象。 最好的方法是什么 到目前为止,我所拥有的是-我将对象放在jobExecutionContext中,然后我将itemProcessor的范围设置为“step”,并将itemProcessor的属性绑定到“#{stepExecution.jobExecution.executionContext}”。这确实让我可以访问我的对象。但我在这个解决方案中

Spring batch spring远程分块读取问题

我在JMS上使用spring远程分块。我的配置如下 网关等待超时=5000ms,提交间隔=10,每次读取可读取的记录数为1000 并发使用者和最大并发使用者分别为20和30 油门限制为5 按照上述配置,读卡器读取70k记录并停止,等待从机处理读取的项目 问题是,当需要读取的总记录数为225k时,为什么会停在70K 将提交间隔更改为2,将每次读取的记录数更改为500,将总读取数更改为14k,知道吗 作业状态保持为“已启动” 提前感谢您的帮助我在将ActiveMQ用于远程区块时遇到了类似的问题。但是

Spring batch Spring批处理-读取一次,写入两次

我是新来的。 我的要求是我有一个读卡器,它通过web服务调用/数据库调用获取记录,目前我正在将这些记录写入一个表中。 现在,我需要对读卡器读取的相同记录进行处理并写入另一个表。 这里需要注意的是,在第二次写入中存储的第二个项目属于不同的第一次写入类型 我需要像下面这样的 1st Step: - Read items of type A --> Write items of Type A 2nd Step:- Read items of type A --> Process to

Spring batch Spring批处理管理和启动主/从作业

是否可以配置spring batch admin以启动主作业和从作业。我们有一个进程作为主节点,3-4个从节点 Spring batch admin在单独的JVM进程中运行,但所有Spring batch作业都使用相同的batch db架构。Spring batch admin仅能够启动本地部署的作业。因此,虽然可以启动具有主/从配置的作业,但拥有主配置的作业必须在本地部署。你可以通过连接启动远程作业,但你必须自己连接 也就是说,springxd()是一个分布式运行时,能够启动远程部署的作业 谢

Spring batch 单事务中的Spring批处理tasklet

我使用FlatFileItemReader创建了一个spring批处理作业,它从一个分隔文件中读取数据,然后使用JdbcBatchItemWriter写入DB。我的setp配置如下所示 <batch:step id="step1"> <batch:tasklet> <batch:chunk reader="fileReader" writer="dbWriter" commit-interva

Spring batch 调度程序春季启动

我的要求是在集群环境中只在一个实例上运行单个调度程序。为此,我使用了shedlock,但问题是,在服务器启动时,我得到了以下异常,“java.lang.ClassCastException:net.javacramps.shedlock.spring.SpringLockableTaskSchedulerFactoryBean无法强制转换为org.springframework.scheduling.concurrent.ThreadPoolTaskScheduler” 在这方面请帮助我。您可以

Spring batch Spring批处理理解块处理

表中总共有8条记录,其中6条在spring批处理调用读取时符合jpareader的条件。现在我将页面大小和块大小设置为1进行测试。期望当作业运行时,它应该进行6次读取调用,然后它应该逐个处理并逐个写入。但实际上,它只调用read 4次(从日志中我可以看到读取页面0…1,类似于这样),然后处理4次,其中一次被过滤掉,因为不符合写入条件,然后它只更新3条记录,并将作业标记为已成功完成 例如,为了处理所有记录,此作业需要运行3次。有些事情我们不清楚。试图理解区块处理,但我认为区块只是聚合结果以进行写调

Spring batch 使用Spring批处理访问FooterCallBack中的ExecutionContext值

我需要将ReadCount附加到文件页脚,我不知道writeFooter方法中的JobExecution为什么为null 我发现了这一点,根据评论,我应该能够将此信息写入页脚: 我试图实现StepExecutionListener,而writeFooter方法中的stepExecution为null public class Footer implements FlatFileFooterCallback, StepExecutionListener { private final S

Spring batch StateVentitemWriter XML头

我正在使用StatxeventitemWriter写入XML文件。我希望将xml标记上的standalone属性设置为true。是否有任何选项来设置它 您可以扩展StateEventItemWriter并重写该方法。以下是一个例子: @Bean public StaxEventItemWriter<Person> itemWriter() { StaxEventItemWriter<Person> itemWriter = new StaxEventItemWri

Spring batch 在Spring批处理作业-Tasklet中使用Java ProcessBuilder

我正在尝试使用Java ProcessBuilder执行带参数的终端命令。此代码编写在作为作业一部分执行的JavaSpring批处理Tasklet中 尽管使用下面的代码正确初始化了它,但当process builder尝试读取我的命令参数时,我收到了一个空指针异常。这很奇怪,似乎我遗漏了一些基本的东西 使用Process Builder的代码 if (getActiveProfile().equals("test")) { builder = ne

Spring batch 弹簧批处理

我正在从数据库中读取10000条记录。但是,我只想处理5条记录 如何在Spring批处理中只处理5条记录?我希望我的.processor(processor())只执行5次。这是我的密码 @Bean public Step step1(ItemWriter<BillerOrder> writer) { return stepBuilderFactory.get("step1") .<Bi

Spring batch 如何在spring batch admin用户界面中添加作业描述?

有没有办法在spring batch admin的用户界面上添加作业描述 尽管我试图添加作业描述,但spring batch admin无法支持它。 我想知道spring batch admin是否不支持它。没有现成的功能来显示作业描述。它只包含在XML中,在UI中看到的数据来自JobRepository。您必须扩展UI才能添加该功能。我知道我参加聚会迟到了,但我发现了,它对我来说完美无瑕。你所要做的就是: 在类路径中添加messages.properties文件(在 src/main/reso

Spring batch 从Spring XD M5移动到1.0.0版时,使用和Spring数据的Cglib代理错误

我们正在将大量批处理作业从SpringXDM5迁移到1.0.0版本 在创建和部署作业时,在自动连接Spring数据存储库(本例中为Neo4J)时,我们遇到了cglib代理功能的问题 堆栈跟踪的尾部: Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'datasetRepository': Post-processing of FactoryBean'

Spring batch 在spring批处理远程分区作业失败后,如何重新启动该作业

我们正在使用SpringBatch编写一个批处理作业,并遵循远程分区方法。我们在独立应用程序上运行主应用程序,在应用程序服务器上运行从应用程序。我们面临一个问题,在某些分区完成后,主服务器出现故障。我只是想知道我如何才能触发剩余工作的工作 提前谢谢 -麦迪,奴隶们失败了吗?他们可能正在完成他们的工作…感谢您的快速响应..奴隶没有失败,我正在主步骤完成后生成报告..因为主步骤失败,我无法继续..我如何处理这种情况?还有一个问题是如果一些奴隶失败,我们如何仅为发生故障的从属设备重新启动作业?如果重新

Spring batch 在面向chunck的步骤中执行数据库操作

我有一个“reader/processor/writer”形式的面向块的处理器,称为Job1。如果可能的话,在同一事务中,我必须在该作业结束后执行数据库EJB操作。我还有其他的工作(由tasklet实现),我可以简单地完成。我把这个作业称为tasklet中的操作,在完成exeute方法之前。但在这种情况下,我不知道该怎么做。在第一次尝试中,我通过一个步骤侦听器(外部事务)实现了它。但我不能,因为我的公司有uma体系结构规则,不在侦听器中调用数据库操作。我可以在tasklet的另一个步骤中执行它,

Spring batch spring批处理:使事务只读

在batch:chunk中,一组记录被读取、处理(值操作和修改),然后写入XML。一旦区块完成,它将尝试将修改后的数据提交回数据库。但我不希望这种情况发生。有没有办法将事务设置为只读? 我试图将fetch方法设置为只读,但它不起作用。我了解到,默认情况下,事务在块完成后提交。批处理:批处理中定义的事务属性:tasklet只接受传播、超时和隔离级别值。但不仅仅是。。 请建议 <batch:job id="job1"> <batch:step id="step1">

Spring batch 返回类类型的对象时,Spring批处理作业卡在无限循环中

我有一个自定义的ItemReader,在这里我调用存储过程,它返回Oracle结构对象类型,我有ItemProcessor,它使用这个Oracle结构作为类的输入和输出对象。当我从ItemProcessor返回类对象时,这个步骤陷入无限循环。它没有调用ItemWriter 我试图阅读与同一主题相关的现有问题,但没有解决我的问题。尝试在ItemProcessor中发布您的代码。很抱歉,回复太晚。问题解决了。我的ItemProcessor正在循环,因为我正在从一个不返回null的文件流读取它。请尝试

Spring batch 在Spring批处理中动态创建作业

是否可以将Spring批处理作业动态创建为非bean 我已经创建了很多阅读器、编写器、处理器和其他Tasklet,我希望能够从这些部分在运行时构建作业 我有一些基于xml格式的工作描述文件,保存在某个目录中。这些工作描述可以包含关于工作的动态信息,例如,读者和作者为此工作选择了什么。 当程序启动时,将解析这些文件,并且必须创建相应的作业 我想这样实施: @Autowired private JobBuilderFactory jobBuilderFactory; @Autowired priv

Spring batch 为什么我应该在springbatch的FlatFileItemWriter中使用close方法?

为什么我应该在springbatch的FlatFileItemWriter中使用close方法? 否则文件日期将不会持久化 当您在面向区块的步骤中配置项目编写器时,Spring Batch将自动调用打开/更新/关闭/写入方法 因此,您不需要自己调用这些生命周期方法,除非您在步骤范围之外使用item writer,在这种情况下,您需要手动遵守item writer实现的契约(ItemWriter或ItemStreamWriter)

Spring batch 重复tasklet步骤,直到达到特定条件

我使用SpringBatch构建了一个ETL作业。我的主要工作就是从一个数据库读取数据,然后写入另一个数据库。在我的主要工作之前,我需要检查源数据库中的状态,看看它是否准备好了。只有在源数据库准备就绪的情况下,我才会继续执行主作业。我将检查状态逻辑实现为一个Tasklet,并使用简单的逻辑构建我的作业,即如果检查状态步骤失败,则重复此步骤直到步骤成功,然后继续主作业。我构建工作如下: @Bean public Job myJob(MyListener listener) { retur

Spring batch 如何在我的spring批处理应用程序中显式配置TaskBatchExecutionListener

我的spring批处理应用程序未在task\u task\u批处理表中插入任务和作业之间的关系 春季医生说: 将作业执行与执行作业的任务关联 SpringBoot为批处理作业的执行提供了便利 在一个尤伯罐子里。Spring Boot对该功能的支持允许 允许开发人员在该执行中执行多个批处理作业。 Spring云任务提供了关联 作业作业的执行与任务的执行,以便 追溯到另一个 此功能通过使用TaskBatchExecutionListener完成。默认情况下,此侦听器在任何上下文中自动配置,该上下文通

Spring batch 对OpenEdge数据库的Spring批处理支持?

我工作的公司必须支持不同的数据库,其中一个是OpenEdge,我以前从未使用过它。我们有一个使用SpringBoot、SpringDataJPA和SpringBatch的项目 我们添加了一些自定义类,以使Spring批处理能够与OpenEdge一起工作,但是我们遇到了DB锁定问题,而它对于MS SQL Server和Oracle来说工作得很好。有人用OpenEdge DB使用Spring批处理吗?有人知道SpringBatch是否会支持开箱即用的OpenEdge吗 我正在寻找一个由OpenEdg

Spring batch “春季批次”;使用ItemStream reader检测到异步TaskExecutor“;

首先,这个问题似乎正是我们想要做的: SpringBatch 3.0.10,在JavaEE服务器(WebSphere、Java8、JavaEE6)下运行。我也不是这段代码的原始作者 XML配置,我们有一个批处理步骤,从文件中读取一行,处理该行(我们希望多线程的部分),并将记录写入数据库: 即使在以下情况之后: 我们的启动日志仍然包含: 22:25:25252(默认值:3)警告org.springframework.batch.core.step.builder.FaultToleran

Spring batch Spring Kafka批处理消息读写器

如果我的理解是错误的,请更正 当我们通过主题消费记录并写入文件系统或数据库时,Kafka spring批处理非常重要。写入过程在文件系统或数据库端的批处理模式下发生,而不是在Kafka端。这就是为什么spring Kafka批处理支持出现在图片中的原因 从文件中批量读取数据并写入卡夫卡主题的情况也是如此。在这里,批处理过程也在文件末尾 所以,如果我们既不使用任何文件中的数据,也不向消费者和生产者进程之间的任何文件写入数据,那么这与使用普通的kafka消息侦听器和消息编写器一样 我读到,在卡夫卡中

Spring batch 决定Spring批处理步骤、Tasklet还是块

我有一个直截了当的要求,我需要阅读一个项目列表(来自数据库),需要处理这些项目,一旦处理完毕,就必须将其更新到数据库中 我正在考虑将Spring批处理块与reader、processor和writer一起使用。我的阅读器将从列表中一次返回一个项目,并将其发送到处理器,一旦处理结束,它将返回到Writer,在那里更新数据库 我以后可能会用这些方法中的一些同步成本来多线程处理它 在这里,我预见到一些担忧 要处理的项目数可能会更多。可能在10万甚至更多 处理器中需要一些逻辑计算。因此,一次处理1个项目

Spring batch 没有枚举常量类org.springframework.batch.core.JobParameter$ParameterType.DATE-Informix

因此,我正在Informix数据库中设置一个持久的spring批处理v2.2.2作业repo。我已经调整了oracle sql脚本,并使用此sql创建了“批处理作业执行参数”表-注意,“日期”列映射到“日期” CREATE TABLE 'dba'.BATCH_JOB_EXECUTION_PARAMS ( JOB_EXECUTION_ID INTEGER NOT NULL , TYPE_CD CHAR(6) NOT NULL , KEY_NAME CHAR(100) NOT NULL , STR

Spring batch 用于抑制BatchDataInitializer的Spring引导配置

我正在使用Spring Batch的Spring boot 0.5.0.M6。通过使用@EnableBatchProcessing和application.properties中配置的datasource等,配置已完成 在应用程序的第一次运行期间,一切正常,但在我停止应用程序并重新启动应用程序后,会看到以下错误 org.springframework.dao.DuplicateKeyException: PreparedStatementCallback; SQL [INSERT into BA

Spring batch Spring批处理-web服务到web服务分块

我有一个托管的web服务,它允许批量提取记录。此web服务将起始记录编号(ROWID)和页面大小(最大800)作为参数。可能有50-60k条记录要从该服务中提取,并调用另一个web服务以在块中再次发布所有这些数据,而不在中间持久化数据 如何使用SpringBatch通过调用web服务逐页(分块)提取记录,以及如何将相同的记录发布到另一个web服务 我可以使用Spring集成批处理来实现这一点,但对于大数据集,我不确定Spring集成是否是处理大数据集的Spring批处理的理想方式。Spring批

Spring batch 禁用Spring批处理作业

我想知道是否有办法以编程方式启用/禁用所有已定义的spring批处理作业?例如,当我部署应用程序时,数据库是空的,此时我的作业正在运行并引发异常。我希望在数据库中填充某些数据之前(在某些表出现之前)禁用作业。这可能吗?你看了这个问题吗? 通过将spring.batch.job.enabled=false添加到application.properties文件,可以在启动时禁用作业。 然后,在初始化数据库时,可以使用JobLauncher运行作业。这实际上是一个编排问题。你的工作一开始是如何开展的?

Spring batch 弹簧批次兼容性:弹簧批次2.2.7和弹簧芯2.5.6

我们最近开始在应用程序中使用SpringBatch实现批处理。我们目前使用的spring内核是2.5.6。但是,弹簧批次2.2.7使用弹簧芯3.2.9。 我试图将SpringCore、SpringBeans从SpringBatch依赖项中排除,但仍然面临以下异常。我想知道SpringBatch 2.2.7是否与SpringCore2.5.6配合使用 Caused by: java.lang.NoClassDefFoundError: org/springframework/core/serial

Spring batch Spring集成设计信息建议

我们有一个几乎实时处理主记录和子记录的应用程序。例如,当主记录1准备就绪或处于特定状态时,我们需要获取其所有子记录并提交给其他系统。一旦全部提交(成功/失败),我们需要更改其主记录的状态。现在,就我们更改主记录的状态而言,子记录是成功提交还是失败对我们来说并不重要 有人能建议如何在spring集成中实现这一点吗?或者,将spring批处理和spring集成一起使用是一个好主意吗?这是一个非常开放的问题,您可能会得到有争议的答案。您可以通过仅批处理、仅集成或两者的组合来实现这一点。就我个人而言,这

Spring batch 具有提交间隔的Spring批处理问题

我已经编写了一个spring批处理程序,在其中我实现了自定义读写器类。 当我保持提交间隔时,多个记录会重复到提交间隔大小。 例如,我正在以 Id、名称 1,阿卡什 2、约翰 3,Daksh 和提交间隔=“2” 在这种情况下,writer以 1,阿卡什 1,阿卡什 3,Daksh (第一条记录重复到提交间隔,然后是提交间隔后的记录,中间记录在某处被跳过) 当提交间隔=1时,每件事情都可以正常工作,但会对性能产生巨大影响。 请告知 代码片段如下所示: public class PGPFlatFile

Spring batch 如何实施

我创建了一个简单的SpringBatch-SpringBoot应用程序。目前,我在我的资源->application.properties中配置了一个数据源 我希望能够将其移动到更高的环境并尝试一些运行,但在我们的下一个环境中,URL/用户名/密码与我的本地环境不同 更改我的文件很容易,但我一直看到人们谈论ENV。在Spring批处理参考文档中找不到帮助。有人能给我一个链接或帮助我理解这将如何工作吗?我假设系统运行时必须知道其环境,然后代码以某种方式读取并使用正确的属性?如果您的配置是通过spr

Spring batch 使用没有maven依赖项的spring批处理

实际上,我的整个应用程序都在使用struts方法的动态web应用程序中。我想使用SpringBatch进行批处理操作。在我的应用程序中不使用maven是否可以使用SpringBatch 在我的应用程序中不使用maven就可以使用spring批处理吗 对。您需要下载Spring批处理JAR及其依赖项(以及它们的可传递依赖项),并将它们添加到您的类路径中。Maven只是构建具有大量依赖项(甚至更多)的应用程序的一种方便方法。所以你可以不用Maven,但我会更狡猾。

Spring batch 在插入spring批之前删除记录

我做了很多研究,但没有找到解决以下问题的方法。我们正在使用spring批处理来处理用户及其组,并在另一个表中创建关联。 用例是当我们发现用户组已更改时,我们需要删除以前的关联并创建新的关联 我如何使用spring批处理来实现这一点,因为处理器将只返回一个项目 public T process(T source) throws Exception { LOG.info("Processing item: " + source); T target = null; //log

Spring batch 使用哪种方法使joblauncher异步更好?

到目前为止,我们使用的是spring内置joblauncher。现在,我们需要并行运行批处理作业。我们总共有9个批处理作业 我遇到了两种情况- SimpleAsyncTaskExecutor ThreadpoolTaskExecutor 这两种方法都可以使用。 在spring批处理应用程序中实现每种方法时,有人能告诉我它们的优缺点吗 SimpleAsynctaskeExecutor不重用线程(请参阅其),因此我建议使用ThreadPoolTaskExecutor来更好地利用资源

Spring batch Spring批处理:MultiResourceItemReader结果管理

我最近遇到了spring批处理需求的变化:必须从单个文件输入(由层应用程序提供)切换到多个文件输入(从中读取的目录)。 到目前为止,还没有什么大不了的,研究已经完成,我已经准备好了一个新的MultiResourcesItemReader,这个很好用。但当涉及到错误管理时,一些问题开始出现 是否有办法处理单独处理的每个文件中的错误?我觉得MultiResourcesItemReader提供了一种处理多个文件的好方法,但处理它们就像“一个集团”。也就是说,一切不是失败就是成功 我来写一个Custom

  1    2   3   4   5   6  ... 下一页 最后一页 共 10 页