spring-batch相关内容

Spring Batch WriterNotOpenException

我已经创建了一个简单的单步Spring批处理作业,该作业从DB读取项目、处理项目并将结果写入CSV。 在运行时,我最终得到一个 org.springframework.batch.item.WriterNotOpenException: Writer must be open before it can be written to 相关代码: @Configuration @Ena ..
发布时间:2022-02-28 17:48:09 Java开发

春季批量读写执行时间

我正在寻找衡量Spring Batch Read、Proceded和Write操作执行时间的最佳方法。 在Meta-data中有关于整个步骤的信息,但没有关于每个操作的信息。 我正在考虑listeners,但这是正确的解决方案吗? 感谢您的回答! 推荐答案 ItemReadListener、ItemProcessListener和ItemWriteListener接口的be ..
发布时间:2022-02-28 17:46:24 其他开发

Spring Batch-当JdbcPagingItemReader没有返回数据时如何完成作业

我的问题与此existing SO question相反。 JdbcPagingItemReader的行为似乎与该问题中描述的相反,即如果JdbcPagingItemReader找不到任何记录,则将作业标记为FAILED。 日志显示作业被标记为FAILED,因为阅读器无法从病房的第1页获取页面,并且SELECT由于SQLCODE=-313(即 )而失败 -313指定的主机变量数不等 ..
发布时间:2022-02-28 17:45:05 其他开发

使用表列标志将读取的数据标记为正在处理(&q;),然后在末尾还原

下面是我创建的批处理作业的读取器、处理器、编写器和步骤的相关代码部分。 我需要更新正在从中读取数据的表(源表)中的标志列,以标记此作业正在处理此数据,以便其他应用程序不会拾取该数据。然后,一旦读取记录的处理完成,我需要将该列恢复为原始值,以便其他应用程序也可以处理这些记录。 我想,Listener是要采用的方法(ItemReadListener?)。读取器侦听器似乎只适用于第一步(即更 ..
发布时间:2022-02-28 17:43:27 其他开发

Spring Batch-远程分区

目前,我们正在将一个批处理作业从java迁移到Spring Batch。该批处理作业从数据库和Web服务获取输入。我们需要在四台服务器中运行此作业以提高性能,因为此作业正在处理大量数据。 上述场景是否可以通过Spring Batch中的远程分区实现? 我浏览了远程分区文档,但很难理解,而且在远程分区中找不到任何可靠的示例。 请在这方面帮助我。 推荐答案 是的,您描述的 ..
发布时间:2022-02-28 17:39:43 Java开发

在应用程序服务器故障或Spring批处理存储库数据库故障后重新启动Spring批处理作业?

当Spring Batch DB发生故障或服务器关闭时,当时正在运行的Spring Batch作业将处于未知启动状态。 在Spring Batch Admin中,我们不会看到重新启动作业的选项。因此,我们不能恢复这项工作。 如何从上次成功提交重新启动作业? 旧的讨论表明,必须通过更新表来手动处理该问题。我可以手动更新批处理步骤执行和批处理作业执行表中的结束时间、状态。这真的是最好的选择 ..
发布时间:2022-02-28 17:38:12 其他开发

是否可以将Apache Solr与Spring Batch集成?

我读到过Apache Solr和Spring Batch。Apache Solr是功能强大的搜索技术。现在,我们希望从Apache Solr读取数据,然后Spring Batch将处理该数据并写入数据库。 我搜索了很多,但我无法获得有关此集成的演示。 是否可以将Apache Solr与Spring Batch集成? 推荐答案 我们已经完成了一个基于Spring Batch的应用程 ..
发布时间:2022-02-28 17:36:37 其他开发

Spring Batch-如何从一个表中读取数据,并将数据写入两个不同的表

我正在使用Spring Boot and Spring Batch读取源数据库表的一个表中的数据,然后拆分数据并将其写入目标数据库的两个表中。 我选择使用CompositeItemWriter进行此操作,但CompositeItemWriter仅使用一种类型。我要将一个表中的几个字段写入另一个表中,并将其他字段写入另一个表中。 说:老客户和新客户。 错误: 构造函数Cus ..
发布时间:2022-02-28 17:34:46 其他开发

将流作为参数传递给作业

是否有办法在通过作业启动器启动作业时传递流,类似于传递jobParameters? 我有一个单独的文件获取服务,然后我想启动批处理作业来加载它。 代码场景: 考虑这个sample。此处定义了作业,但实际启动器驻留在依赖项underneath中。 因此,在sample中,我添加了一个控制器,它读取用户的输入文件,然后触发sample中定义的示例作业,该示例作业由underneat ..
发布时间:2022-02-28 17:29:46 其他开发

基于Spring-Batch Java的FileItemWriter for CSV

我有一个Spring批处理服务,它联系ItemWriter将数据写入CSV。 我使用了Spring Batch Guide给出的示例。https://spring.io/guides/gs/batch-processing/ 我尝试修改ItemWriter以重新创建CSV。 我面临的问题是- 如果CSV文件不存在,则不会创建该文件。 如果我事先使其可用,则它不会向其中写入数据。 ..
发布时间:2022-02-28 17:28:19 其他开发

JSR 352 Spring Batch与Java EE

关于JSR 352、Spring Batch和Java的几个问题 1)什么时候会有人使用Java在Spring Batch上构建批处理JSR-352应用程序?我最初的看法是,与Spring Batch相比,它需要用Java编写更多代码。 2)JavaEE版本7是否实现了JSR-352?或者它只是随规范发布,开发人员必须实现它?而Spring Batch已经实现了它,从而节省了开发人员的编码 ..
发布时间:2022-02-28 17:25:26 其他开发

如何通过ItemWriter将数据插入多个表

如何通过ItemWriter将数据插入多个表。ItemWriter通过ItemReader获得输入,ItemReader从多个表中选择数据。有人能帮忙吗? 推荐答案 可以使用CompositeWriterof Spring Batch 复合编写器,您的步骤看到的与其他编写 ..
发布时间:2022-02-28 17:23:35 其他开发

无法自动布线JobLauncherTestUtils

我正在尝试测试一个简单的Spring Batch应用程序。 以Spring Batch文档为指导(found here),我创建了以下测试类: import org.junit.runner.RunWith; import org.springframework.batch.test.JobLauncherTestUtils; import org.springframework.ba ..
发布时间:2022-02-28 17:19:17 其他开发

如何使用Spring Batch解析定长格式文件(不带分隔符的文件)

如何为定长格式文件(不带任何分隔符的文件)配置Spring-Batch阅读器。 每个元素都是根据其开始位置和结束位置确定的。 行样: 120180208FAILED 220180208 SUCCES 120170208 SUCCES 1:代码,20180208:日期,失败:状态 推荐答案 您可以为此使用固定长度令牌化器读取器。 这是您可以配置FixedLe ..
发布时间:2022-02-28 17:17:36 其他开发

如何创建春批过滤项目的报表?

我基本上想用批中每个步骤中过滤掉的项创建一个报告。目前,我可以使用Spring-Batch-admin查看有多少项被过滤(和跳过),但我想要项目列表,这样我就可以手动处理它们。 我的步骤遍历一系列客户端,并从第三方来源获取其中的数据。对于我用来获取数据的每个帐户,我都有用户名和密码。客户端可能没有凭据。在运行处理器之前,我会用过滤发送这些信息。但客户可能有错误的凭据(他打错了),然后我也想用 ..
发布时间:2022-02-28 17:16:20 其他开发