美文网首页spring-batch
spring batch 1:简介

spring batch 1:简介

作者: 代码行间的无聊生活 | 来源:发表于2017-02-14 00:33 被阅读215次

    最近因项目需要开始使用spring batch作为批处理方案,结合Quartz开发定时批处理任务。此次的模块开发中使用了spring、mybatis。
    另外需要说明:官方文档中是结合spring boot使用,如果项目中使用了spring boot的同学不需要像本文中一样还是使用xml配置定义job、step等。
    一、spring batch
    spring batch:建立在Spring框架的基础之上,它遵循Spring的惯例.spring batch包括日志/跟踪,事务管理,作业处理统计,作业重新启动,跳过和资源管理。
    二、spring batch 适用环境
    1. 比如商城的提货通知,当某一批次物流到达后需要通知用户提货。
    2. 缴费扣款、续订等业务:当前业务触发则进行查询、读取适用信息,再根据业务逻辑进行扣款、或者通知业务,完成后批量写入库。
    3. 优惠券等:优惠券到期、发放等。
    4. 等等等等。
    三、spring batch 基本组成:Job、setp、ItemReader、ItemProcessor、ItemWriter、Partitioner
    1. org.springframework.batch.core.Job:batch Job,同时也是执行Job的入口;
    2. org.springframework.batch.core.Step:job中的step,提供了执行Step的能力;
    3. org.springframework.batch.item.ItemReader<T>:读数据(包括文件、数据库等)提供了读取数据的能力;
    4. org.springframework.batch.item.ItemProcessor<T>:业务处理(自定义业务)我们可以通过它应用业务逻辑到每一条要处理的数据;
    5. org.springframework.batch.item.ItemWriter<T>:写数据(包括文件、数据库等)提供了写数据的能力;
    6. org.springframework.batch.core.partition.support.Partitioner:参数处理、传递,包括任务中传递的参数,根据需求传递的参数等

    附录
    1. [ IBM developerworks 详细介绍了spring batch的使用 ](http://www.ibm.com/developerworks/cn/java/j-lo-springbatch1/)
    2. [spring.io](http://projects.spring.io/spring-batch/#quick-start)
    3. [Spring Batch中文文档](https://kimmking.gitbooks.io/springbatchreference/content/01_introduction/11.html)
    

    如有疑问请加公众号(K171),如果觉得对您有帮助请 github start

    公众号_k171

    相关文章

      网友评论

        本文标题:spring batch 1:简介

        本文链接:https://www.haomeiwen.com/subject/waztwttx.html