我知道spring批处理框架以块的形式处理数据。但是,我在想,当通过java实现相同的分块功能时,为什么我们需要使用批处理框架。
有没有人可以告诉我是否有更多理由可以进入春季批处理框架?
答案 0 :(得分:57)
让我稍微改一下你的问题,看看是否能解决这个问题。
Spring Batch提供了什么,我在构建批处理应用程序时必须自己处理?
Spring Batch作为JSR-352(java批处理规范)的基础,并且由于该规范已经出现,现在Java空间中有很多Spring Batch可用。话虽如此,Spring Batch仍然提供了很多基本Java所做的范围:
在" basic"批量工作
在简单批处理作业的范围内,Spring Batch提供了一系列在所有企业垂直行业中经过实战测试的实用程序和实现。一些例子是:
ItemReader
和15个ItemWriter
实现,涵盖了输入和输出的大量选项(文件,JDBC,NoSQL,JMS等)。所有这些都提供了声明式I / O选项,因此您不必为有状态的读者和作者编写和测试代码。Tasklet
(Spring Batch等同于JSR-352' s Batchlet
)实现的集合,包括用于执行shell命令和与Hadoop连接的实现。其他优势
除了Spring Batch带来的上述示例之外,它还有更进一步:
我个人认为批量处理是设置它并忘记它"编程模型。虽然它不性感,但批处理是一种非常有用的处理模型,并且比大多数人意识到的更有用。 Spring Batch提供了一个环境,可以尽可能轻松地开发强大的批处理作业。