问题标签 [spring-batch]
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 bean
我有一个 Spring 应用程序(Spring Batch 不是 Web 应用程序)。在测试类中,我想获取对给定类型的所有 bean 的访问权限。
我知道在 Spring 中您通常应该使用 IOC 并让容器注入您的 bean。但是在这种情况下,我想遍历扩展给定类(org.springframework.batch.item.database.JdbcCursorItemReader)的可变数量的bean,并做一些事情(希望它是一个单元/集成测试,只是连接它到数据库并读取 1 行,因此我们可以在测试时确认系统中的所有 JdbcCursorItemReader 都具有有效的 SQL 和行映射器)。
问题 1) 我一次只能得到一个豆子。我可以让我的班级实现 BeanFactoryAware以获取对我的 beanfactory 的引用。然后我可以做beanFactory.getBean("name"); 访问单个 bean。我怎样才能得到所有的豆子?我可以循环并删除那些不是我想要的类的东西。但不知何故,我需要一个 beanfactory 知道的所有 bean 的列表或其他东西。
问题 2)我从 beanfactory 取回的 bean 是代理。如果我尝试转换并使用我的 bean,我会得到类似 java.lang.ClassCastException: $Proxy0 cannot be cast to org.springframework.batch.item.database.JdbcCursorItemReader
java - What is the best way to test job flow in Spring-Batch?
I've got a complicated batch application, and I want to test that my assumptions about flow are correct.
Here's a much simplified version of what I'm working with:
Job1 is the job I want to test. I really only want to test the transition of step2.master to step3 or step4. I don't want to test step1 at all...
However, I want to keep Job1's specification intact, since this test is testing the configuration, not the underlying actions. I already have acceptance tests to test end-to-end stuff. This example is so I can write targeted tests for small variations without creating seperate end-to-end tests for each edge case.
What I want to test is that when the job inside step2 fails, step2.master will forward me on to step 4 and not step 3. Is there a good way to test this?
csv - 使用 Spring Batch 动态处理多个批处理文件并生成对应的输出文件
我最近开始学习 Spring Batch,以便利用它的一些更高级的功能,如异步批处理、作业停止和调度来替换一些现有的批处理功能,并实现新的批处理功能。现在,我正试图弄清楚如何动态处理多个批处理文件并为每个输入文件生成一个“收据”文件,我对 Spring Batch 架构师的一些设计决策感到困惑。似乎为了处理一个简单的平面 CSV 文件并生成输出,我将不得不手动破解我的 ApplicationContext 中的 bean 并在运行时手动设置它们的“资源”属性,以实现我想要的FlatFileItemReader 和 FlatFileItemWriter。对于据称是多线程、高性能批处理框架的东西来说,这既不安全也不是好的做法。我只是错过了什么吗?
java - Spring Batch:如何在步骤侦听器中使用占位符?
为什么上面给我以下错误:
解决此问题的最佳方法是什么?
java - Spring批处理和集成
我是 Spring 的初学者,我必须为学校做一个项目。我可以做什么样的项目,我可以使用 Spring Batch 和 Integration。我知道我可以将文件写入目录,写入、读取和修改逗号分隔的文件,但我无法想象可以结合这些技术的场景。
spring - Oracle SOA 中的批处理
我想在 Oracle SOA 应用程序中实现批处理。在我们的 BPEL 过程中,我将收到巨大的 xml,我将解析 xml 并在 XML 中的每个项目中调用其他 Web 服务?Oracle SOA 能做到吗?或者我需要像 Spring Batch 这样的框架。?
谢谢
java - 春季批量插入中的提交大小
我有一个包含 500,000 条记录的列表。我正在使用批量更新代码在数据库中插入数据。我应该在一次批量插入中发送这么多记录吗?或者我应该使用提交大小以 50000 的间隔提交。如何设置提交大小?
java - 如何从 2.0.0.RC2 spring batch 版本迁移到 2.0.4?
我必须将我的项目从 2.0.0.RC2 版本迁移到 2.0.4。但问题是 2.0.4 的 xsd 与 2.0.0.RC2 不同。这意味着我的工作配置都不起作用。
2.0.0 RC2 中的作业配置是
2.0.4 中的作业配置将是
是否有任何实用程序可以使我现有的所有作业配置与 2.0.4 兼容?另外,更改配置后,我会面临任何进一步的问题吗?
spring-batch - 在启动时将作业加载到 Spring Batch Admin
从 Spring Batch Admin 文档中,它提到如果作业配置文件位于 META-INF/spring/batch/jobs/*.xml 下的类路径中,则将加载作业
在 STS 附带的 spring-batch-admin-sample 中,作业是在部署 admin web 应用程序时加载的,在文件 classpath:\META-INF\batch\module-context.xml 下,并在部署时引导。不知道它是如何工作的......
虽然我可以通过在用户界面http://localhost:8080/simple-batch-admin/configuration中上传来加载作业配置,但由于某种原因,我的一些自定义 bean 没有自动装配。因此,理想的行为是在部署 Admin 时加载所有作业。
先感谢您。
java - 如何在 Spring Batch 中覆盖 spring 框架版本?
我正在使用 Spring Batch 2.1.6.RELEASE 开始一个新项目,并使用 Maven 进行依赖管理。
默认情况下,它导入 spring 框架 2.5.6,但我想改用 3.0.5.RELEASE。
这篇文章说它是兼容的,但我不知道如何在我的 maven pom 文件中声明它。
我尝试只放置 spring-core、spring-beans 和 spring-context 版本 3.0.5.RELEASE 的依赖项,但这会将库添加到项目中而不会删除 2.5.6 版本。
我查看了 spring-batch-parent pom 文件,并且有一个名为“spring3”的配置文件使用了我想要的 spring 版本。如何在项目的 pom 文件中激活配置文件?
提前致谢,
菲利普