Spring批处理和集成

nob*_*obo 8 java spring spring-integration spring-batch

我是春天的初学者,我必须为学校做一个项目.我可以使用Spring Batch和Integration进行哪种项目.我知道我可以将文件写入目录,编写,读取和修改逗号分隔文件,但我无法描绘可以将这些技术结合起来的场景.

one*_*rld 5

我自己在Spring或Spring Batch或Spring Integration上都不是专家,但我可以告诉你一个实际的任务,我必须在我的组织中使用所有这些来满足需求.

我公司在客户注册时会从我们的客户那里取信用卡,并且每30天收取一次.因此,每天我们必须看到谁在第30天,并通过收费自动重新给他们服务.因此,我必须每天将数据发送给银行.

步骤:1我必须编写一个程序,通过批处理程序从我们的安全数据库中获取当天到期的客户的信用卡详细信息,并将该内容以银行所需的特定格式写入我公司服务器的临时位置作为".txt"文件(例如:/user/someuser/endofdaytransaction/dd-mm-yyyy.txt)

步骤:2只要内容(dd-mm-yyyy.txt)在此目录中可用(/ user/oneworld/endofdaytransaction /),我就必须连接到银行的SFTP服务器并将文件传输到银行所拥有的目录中提供给我们.

我使用Spring Batch for Step:1,批处理作业每天下午5点通过Quartz调度程序触发,Spring Integration for Step:2继续轮询目录,一旦找到文件就将其传输到银行.

我还从Spring文档中看到我可以对这些技术进行混搭,也就是说,我可以避免写入临时目录并要求Spring Integration直接写入银行的SFTP服务器.

我能想到的其他实际例子:我有AT&T并订购了自动付款,即他们每30天向我收费并保持我的互联网和电话服务活跃.我已经向AT&T提供了我的银行信用卡详细信息.他们聚合所有要开帐单的信用卡(订户)并将数据发送到VISA或MASTERCARD,他们需要在特定时间每天收费作为批处理文件.我希望你能提到我提到的第1步和第2步.快乐学习!


Mic*_*low 4

但我无法想象可以结合这些技术的场景

好吧,让我们以一家相当大的公司为例,它需要大量带有 Spring 集成的批处理作业,您可以设置一个系统来

  • 管理批处理作业
  • 根据资源规划作业(例如在特定时间窗口运行批处理作业,以免破坏在线业务)
  • 只需启动/停止作业
  • 提供工作状态视图

实际上它只是

  • 调度
  • 报告
  • 管理

通过许多企业消息概念,请参阅http://www.eaipatterns.com/,其已链接至http://www.springsource.org/spring-integration

对于您的范围 - 学校项目 - 如果您确实有一些工作(3个或更多),那么您可以构建一个批处理启动工具,一个GUI(spring mvc),它提供启动/停止/监视/查看这些工作的按钮工作,但我认为这是一个非常大的项目,很容易跨越许多人周