Spring Batch:动态复合阅读器/处理器/写入器

时间:2017-10-11 18:31:49

标签: spring-batch

我见过this (2010)this (SO, 2012),但仍然没有得到我需要的答案......

Spring Batch中是否有选项可以使用动态复合阅读器/处理器/写入器?

我们的想法是能够在运行时替换处理器,并且在多处理器(AKA复合处理器)的情况下,可以选择添加/删除/替换/更改处理器的顺序。如上所述,读者/作者也一样。

我想过从DB中读取处理器列表(使用缓存?),并且可以更改项目(bean'名称)。这有意义吗?

编辑 - 我为什么需要这个?

有些情况下我使用处理器作为"过滤器",可能会发生业务(客户端)可能会改变要求(是的,它非常烦人)并要求在过滤器之间切换(改变优先权)。
其他用例是有多个读者从不同的数据仓库获取数据,而且 - 客户端不时更改仓库(集成阶段),我不希望我的应用程序每次都重新启动时间。
当然还有很多其他用例。 plus this.

由于

1 个答案:

答案 0 :(得分:0)

我已经开始研究这个项目了:

https://github.com/OhadR/spring-batch-dynamic-composite

实现上述问题中的要求。如果有人想做出贡献 - 请随意!