spring-batch相关内容

Spring Batch如何作为Reader读取多个表(查询)并将其作为平面文件写入

在我的项目中,我读取了具有不同查询的多个表,并将这些结果集合并到平面文件中。我怎样才能做到这一点。我的意思是JdbcReader直接接受1个SELECT查询,我如何自定义它。 推荐答案 如果JdbcCursorItemReader不符合您的需要,您始终可以通过实现ItemReader接口自由实现自定义读取器。 public interface ItemReader { ..
发布时间:2022-02-28 17:15:08 Java开发

Spring Batch:无法增加标识;嵌套异常是com.microsoft.sqlserver.jdbc.SQLServerException:无效对象名称';BATCH_JOB_SEQ';?

我们正在为Spring批处理应用程序从Oracle DB迁移到Azure SQL Server。 尝试执行迁移到SQL Server后的作业时出现以下错误 无法增加标识;嵌套异常为 com.microsoft.sqlserver.jdbc.SQLServerException:对象名称无效 ‘AppName.BATCH_JOB_SEQ’。 我确信SQL Server具有所需的序列 ..
发布时间:2022-02-28 17:13:34 Java开发

无法使Spring Batch条件流正常工作

我在使用java config使有条件的Spring批处理流工作时遇到了问题。我在Spring Batch示例、Spring Batch的测试代码或堆栈溢出中看到的示例倾向于显示一个条件,其中单个步骤需要有条件地执行,或者是最后一步,或者两者兼而有之。那不是我需要解决的情况。 在过程性伪代码中,我希望它的行为类似 initStep() if decision1() subflo ..
发布时间:2022-02-28 17:12:22 其他开发

Spring Batch:创建从Web服务读取XML文件的ItemReader

我正在尝试创建一个Spring批处理作业,该作业将处理将通过睡觉调用提供的xml文件。 我正在尝试使用Internet上托管的XML文件来测试这一点。该文件位于:http://www.w3schools.com/xml/plant_catalog.xml 我在本地下载了此文件,并能够将其转换为对象并写入,但如果不将文件下载到本地,我不知道如何才能做到这一点。这在本地有效,但是如何将URL指 ..
发布时间:2022-02-28 17:07:33 Java开发

Spring Batch-同时执行作业的多个实例

我有一个澄清。 我们是否可以同时运行作业的多个实例。 目前,我们在任何给定时间都有一个作业实例。 如果可能,请告诉我怎么做。 推荐答案 可以。Spring Batch根据JobParameters区分作业。因此,如果您总是将不同的JobParameters传递给同一作业,则会有同一作业的多个实例在运行。 一种简单的方法是向每个启动作业的请求添加一个UUID参数。 示例 ..
发布时间:2022-02-28 17:04:05 其他开发

与Item Reader一起使用的正确编码是什么

我正在使用Spring Batch读取CSV文件,当我用Notepad++打开这些文件时,我看到使用的编码是encode in ANSI。 现在,当从文件中读取一行时,我注意到所有重音字符都不能正确显示。例如,我们取这一行: Données issues de la reprise des données 它被转换成这样,带有一些特殊字符: 因此,作为第一个解决方案,我将Item ..
发布时间:2022-02-28 17:02:31 Java开发

来自Spring Batch的JobParameters

我正在尝试将作业参数注入自定义ItemReader。我已经回顾了关于这个主题的所有StackOverflow注释(示例:How to get access to job parameters from ItemReader, in Spring Batch?),我发现这是一个常见的痛点,大部分都没有解决。我希望春天的大师(@Michael Minella Anyone)能看到这一点,并有一些洞察力 ..
发布时间:2022-02-28 16:58:13 Java开发

春批中批次状态与退出状态的差异

春批批次状态与退出状态差异 推荐答案 来自Spring Batchdocumentation: 指示执行状态的BatchStatus对象。运行时为BatchStatus.STARTED,如果失败则为BatchStatus.FAILED,如果成功完成则为BatchStatus.COMPLETED 指示运行结果的ExitStatus。最重要的是它包含将返回给调用方的退出代码。 有 ..
发布时间:2022-02-28 16:57:00 其他开发

聚合处理器或聚合阅读器

我有一个要求,就像我从一个数据库中读取项目,如果可能的话,以一种分页的方式,其中项目代表后来的“批量大小”,我做一些处理步骤,比如过滤等,然后我想累计这些项目,将其发送到睡觉服务,在那里我可以分批发送,例如一次n个,而不是逐个发送。 在步骤级别并行化是我正在做的事情,但是我不确定如何使批处理工作,我是否需要实现返回列表的读取器和接收列表的处理器?如果是这样的话,我读到您将不会有一个正确的账户数量 ..
发布时间:2022-02-28 16:55:37 其他开发

将大量集合传递到Spring批处理步骤的最佳方式是什么?

Use case: 将数据集X(从数据库)一次性读取到集合C。[集合大小可以是5000] 使用集合C处理/丰富Spring批处理步骤中的项目(例如丰富步骤) 如果C远远大于可以通过ExecutionContext传递的值,我们如何使其在丰富步骤的ItemProcessor中可用? 推荐答案 在您的enrichStep中添加StepExecutionListener.bef ..
发布时间:2022-02-28 16:53:38 其他开发

Spring Batch-AmqpWriter和AmqpReader示例

需要一个解决方案,使用AmqpWriter在RabbitMQ上写入数据,使用AmqpReader使用RabbitMQ读取数据。我们不是在寻找Apache Kafka,我们只想发送Say Program详细信息并使用它。 编写器代码 JobConfig.java @Configuration public class JobConfig { @Autowired ..
发布时间:2022-02-28 16:47:27 其他开发

Spring Batch分区联接覆盖RowMapper值,从而获得单个数组而不是多个数组

我使用Spring Batch从Postgres读取数据并将其写入MongoDB。在我的示例中,Employee有3种不同类型的电子邮件地址1)家庭地址2)办公室地址3)员工电子邮件表中的社交地址。 因为我们在DB中几乎有10 lacs名员工,因此使用自定义分区从Postgres中提取数据,并使用Employee_Email(后来的Employee_Phone也是如此)进行连接,以便在Pro ..
发布时间:2022-02-28 16:45:37 其他开发

Spring Batch:作业存储库的水平伸缩

我读到了很多关于如何使用Master/Slave范型启用单个作业的并行处理和分块的内容。考虑一个已经实现的Spring Batch解决方案,该解决方案打算在独立服务器上运行。通过最小限度的重构,我希望使其能够横向扩展,并在生产操作中具有更强的弹性。速度和效率不是目标。 http://www.mkyong.com/spring-batch/spring-batch-hello-world-ex ..
发布时间:2022-02-28 16:42:37 其他开发

在春季批次的ItemWriter中无法捕获异常

我正在编写一个Spring批处理过程来将数据集从一个系统迁移到另一个系统。在本例中,这与使用RowMapper实现在将对象移交给ItemWriter之前从查询构建对象一样简单。ItemWriter调用我的DAO上的save方法(定义为接口,由Spring数据处理) 问题是:我对MyItem表有一个唯一的约束,因此保存重复的记录将导致DataIntegrityViolationException。 ..
发布时间:2022-02-28 16:40:53 Java开发