java jsr
继我们的Java EE系列之后,JSR 352负责人Chris Vignola向我们展示了批处理规范及其使用方法。
批处理不是一个新概念。 实际上,它已经存在了数十年。 Java开发人员已经认识到了批处理应用程序的需求,但直到现在仍必须采用非标准方法。 JSR 352引入了令人兴奋的新Java规范,用于构建,部署和运行批处理应用程序。 批处理是后台批量处理的行业隐喻。 无数的业务流程都依赖于批处理,并且需要强大的基于标准的工具来启用这种基本的工作负载类型。
JSR 352解决了三个关键问题:批处理编程模型,作业规范语言和批处理运行时。 这构成了关注点分离。
- 应用程序开发人员具有清晰,可重用的界面,用于构建批处理样式的应用程序。
- 作业编写者具有强大的表达语言,可用于执行批处理执行的步骤。
- 解决方案集成商具有用于启动和控制批处理执行的运行时API。
JSR 352专门不解决作业调度问题。 有太多的选择可用于执行此操作,这将是多余的。 作业调度通常是企业关注的问题,调度的批次是更广泛的工作负载组合的一部分。 您可以轻松地应用从EJB计时器或cron到Control-M,Tivoli Workload Scheduler,UC4 ONE Automation等调度程序的调度机制来驱动Java批处理作业。
JSR 352是为Java EE 7和Java SE 6平台定义的。 有关其他详细信息,请查阅JSR 352主页 。 尽管几乎所有JSR 352在Java EE和Java SE环境之间都是通用的,但本文的其余部分将专门介绍作为Java EE 7一部分的JSR 352。
Java EE 7环境中的JSR 352
JSR 352根据定义的生命周期定义了用于定义批处理作业的作业规范语言(JSL),描述了构成实现批处理业务逻辑的批处理编程模型的工件的一组接口以及用于运行批处理作业的批处理运行时。 。
批处理运行时是Java EE 7运行时的一部分,可以完全访问平台的所有其他功能,包括事务管理,持久性,消息传递等。