Spring Batch 批处理框架

出版日期:2015-2
ISBN:9787121252414
作者:刘相
页数:404页

内容概要

刘相,毕业于上海理工大学计算机学院,硕士学位,从业9年,Java技术专家。2006年加入普元信息技术股份有限公司至今,业务集成产品线技术总监、资深架构师,主要从事中间件产品设计研发工作,参与国内多款中间件产品(SOA应用开发平台、SOA流程平台、企业服务总线)的研发设计工作。主要研究方向BPM、分布式计算、SOA领域,在企业应用平台产品开发方面具有丰富的产品、架构设计经验。

书籍目录

目录
第1篇 入门篇
第1章 Spring Batch简介
2
1.1 什么是批处理
2
1.2 Spring Batch
3
1.2.1 典型场景
3
1.2.2 Spring Batch架构
4
1.3 Spring Batch优势
4
1.3.1 丰富的开箱即用组件
5
1.3.2 面向Chunk的处理
5
1.3.3 事务管理能力
5
1.3.4 元数据管理
5
1.3.5 易监控的批处理应用
5
1.3.6 丰富的流程定义
5
1.3.7 健壮的批处理应用
6
1.3.8 易扩展的批处理应用
6
1.3.9 复用企业现有IT资产
6
1.4 Spring Batch 2.0新特性
6
1.4.1 支持Java5
7
1.4.2 支持非顺序的Step
7
1.4.3 面向Chunk处理
7
1.4.4 元数据访问
11
1.4.5 扩展性
11
1.4.6 可配置性
12
1.5 Spring Batch 2.2新特性
13
1.5.1 Spring Data集成
13
1.5.2 支持Java配置
13
1.5.3 Spring Retry
14
1.5.4 Job Parameters
14
1.6 开发环境搭建
15
第2章 Spring Batch之Hello World
16
2.1 场景说明
16
2.2 项目准备
16
2.2.1 项目结构
16
2.2.2 准备对账单文件
17
2.2.3 定义领域对象
18
2.3 定义job基础设施
18
2.4 定义对账Job
19
2.4.1 配置ItemReader
19
2.4.2 配置ItemProcessor
21
2.4.3 配置ItemWriter
22
2.5 执行Job
23
2.5.1 Java调用
23
2.5.2 JUnit单元测试
24
2.6 概念预览
26
第2篇 基本篇
第3章 Spring Batch基本概念
28
3.1 命名空间
29
3.2 Job
30
3.2.1 Job Instance
31
3.2.2 Job Parameters
33
3.2.3 Job Execution
34
3.3 Step
35
3.3.1 Step Execution
37
3.4 Execution Context
38
3.5 Job Repository
39
3.5.1 Job Repository Schema
39
3.5.2 配置Memory Job
Repository
40
3.5.3 配置DB Job Repository
41
3.5.4 数据库Schema
42
3.6 Job Launcher
48
3.7 ItemReader
49
3.8 ItemProcessor
50
3.9 ItemWriter
50
第4章 配置作业Job
52
4.1 基本配置
52
4.1.1 重启Job
54
4.1.2 Job拦截器
55
4.1.3 Job Parameters校验
58
4.1.4 Job抽象与继承
59
4.2 高级特性
61
4.2.1 Step Scope
61
4.2.2 属性Late Binding
62
4.3 运行Job
63
4.3.1 调度作业
65
4.3.2 命令行执行
68
4.3.3 与定时任务集成
71
4.3.4 与Web应用集成
73
4.3.5 停止Job
77
第5章 配置作业步Step
85
5.1 配置Step
86
5.1.1 Step抽象与继承
87
5.1.2 Step执行拦截器
89
5.2 配置Tasklet
92
5.2.1 重启Step
93
5.2.2 事务
94
5.2.3 事务回滚
96
5.2.4 多线程Step
97
5.2.5 自定义Tasklet
97
5.3 配置Chunk
99
5.3.1 提交间隔
102
5.3.2 异常跳过
103
5.3.3 Step重试
105
5.3.4 Chunk完成策略
107
5.3.5 读、处理事务
110
5.4 拦截器
112
5.4.1 ChunkListener
115
5.4.2 ItemReadListener
116
5.4.3 ItemProcessListener
116
5.4.4 ItemWriteListener
117
5.4.5 SkipListener
117
5.4.6 RetryListener
118
第6章 读数据ItemReader
120
6.1 ItemReader
120
6.1.1 ItemReader
120
6.1.2 ItemStream
121
6.1.3 系统读组件
122
6.2 Flat格式文件
122
6.2.1 Flat文件格式
123
6.2.2 FlatFileItemReader
125
6.2.3 RecordSeparatorPolicy
129
6.2.4 LineMapper
130
6.2.5 DefaultLineMapper
131
6.2.6 LineCallbackHandler
138
6.2.7 读分隔符文件
139
6.2.8 读定长文件
141
6.2.9 读JSON文件
143
6.2.10 读记录跨多行文件
145
6.2.11 读混合记录文件
147
6.3 XML格式文件
150
6.3.1 XML解析
150
6.3.2 Spring OXM
151
6.3.3 StaxEventItemReader
153
6.4 读多文件
156
6.5 读数据库
159
6.5.1 JdbcCursorItemReader
160
6.5.2 HibernateCursorItem
Reader
167
6.5.3 StoredProcedureItem
Reader
171
6.5.4 JdbcPagingItemReader
174
6.5.5 HibernatePagingItem
Reader
179
6.5.6 JpaPagingItemReader
183
6.5.7 IbatisPagingItemReader
186
6.6 读JMS队列
190
6.6.1 JmsItemReader
190
6.7 服务复用
194
6.8 自定义ItemReader
197
6.8.1 不可重启ItemReader
197
6.8.2 可重启ItemReader
199
6.9 拦截器
202
6.9.1 拦截器接口
202
6.9.2 拦截器异常
203
6.9.3 执行顺序
204
6.9.4 Annotation
204
6.9.5 属性Merge
205
第7章 写数据ItemWriter
207
7.1 ItemWrite
207
7.1.1 ItemWriter
208
7.1.2 ItemStream
208
7.1.3 系统写组件
209
7.2 Flat格式文件
210
7.2.1 FlatFileItemWriter
210
7.2.2 LineAggregator
214
7.2.3 FieldExtractor
217
7.2.4 回调操作
219
7.3 XML格式文件
222
7.3.1 StaxEventItemWriter
222
7.3.2 回调操作
226
7.4 写多文件
230
7.4.1 MultiResourceItemWriter
230
7.4.2 扩展MultiResourceItem
Writer
233
7.5 写数据库
234
7.5.1 JdbcBatchItemWriter
235
7.5.2 HibernateItemWriter
239
7.5.3 IbatisBatchItemWriter
242
7.5.4 JpaItemWriter
245
7.6 写JMS队列
248
7.6.1 JmsItemWriter
248
7.7 组合写
252
7.8 Item路由Writer
254
7.9 发送邮件
258
7.9.1 SimpleMailMessageItem
Writer
258
7.10 服务复用
262
7.10.1 ItemWriterAdapter
262
7.10.2 PropertyExtracting
DelegatingItemWriter
264
7.11 自定义ItemWrite
267
7.11.1 不可重启ItemWriter
267
7.11.2 可重启ItemWriter
268
7.12 拦截器
271
7.12.1 拦截器接口
271
7.12.2 拦截器异常
273
7.12.3 执行顺序
274
7.12.4 Annotation
274
7.12.5 属性Merge
275
第8章 处理数据ItemProcessor
277
8.1 ItemProcessor
277
8.1.1 ItemProcessor
277
8.1.2 系统处理组件
278
8.2 数据转换
279
8.2.1 部分数据转换
279
8.2.2 数据类型转换
281
8.3 数据过滤
282
8.3.1 数据Filter
282
8.3.2 数据过滤统计
283
8.4 数据校验
285
8.4.1 Validator
285
8.4.2 ValidatingItemProcessor
286
8.5 组合处理器
288
8.6 服务复用
291
8.6.1 ItemProcessorAdapter
291
8.7 拦截器
293
8.7.1 拦截器接口
293
8.7.2 拦截器异常
295
8.7.3 执行顺序
295
8.7.4 Annotation
296
8.7.5 属性Merge
297
第3篇 高级篇
第9章 作业流Step Flow
300
9.1 顺序Flow
300
9.2 条件Flow
302
9.2.1 next
303
9.2.2 ExitStatus VS
BatchStatus
306
9.2.3 decision条件
308
9.3 并行Flow
311
9.4 外部Flow定义
314
9.4.1 Flow
314
9.4.2 FlowStep
317
9.4.3 JobStep
319
9.5 Step数据共享
321
9.6 终止Job
323
9.6.1 end
324
9.6.2 stop
326
9.6.3 fail
327
第10章 健壮Job
330
10.1 跳过Skip
331
10.1.1 配置Skip
331
10.1.2 跳过策略SkipPolicy
333
10.1.3 跳过拦截器
335
10.2 重试Retry
338
10.2.1 配置Retry
339
10.2.2 重试策略RetryPolicy
341
10.2.3 重试拦截器
343
10.2.4 重试模板
345
10.3 重启Restart
353
10.3.1 重启Job
353
10.3.2 启动次数限制
355
10.3.3 重启已完成的任务
355
第11章 扩展Job、并行处理
357
11.1 可扩展性
357
11.2 多线程Step
358
11.2.1 配置多线程Step
359
11.2.2 线程安全性
360
11.2.3 线程安全Step
361
11.2.4 可重启的线程
安全Step
363
11.3 并行Step
365
11.4 远程Step
366
11.4.1 远程Step框架
366
11.4.2 基于SI实现远程Step
368
11.5 分区Step
373
11.5.1 关键接口
374
11.5.2 基本配置
376
11.5.3 文件分区
378
11.5.4 数据库分区
382
11.5.5 远程分区Step
387

作者简介

本书全面、系统地介绍了批处理框架Spring Batch,通过详尽的实战示例向读者展示了Spring Batch框架对大数据批处理的基本开发能力,并对框架的架构设计、源码做了特定的剖析;在帮助读者掌握Spring Batch框架基本功能、高级功能的同时,深入剖析了Spring Batch框架的设计原理,帮助读者可以游刃有余地掌握Spring Batch框架。
本书分为入门篇、基本篇和高级篇三部分。入门篇介绍了批处理、Spring Batch的基本特性和新特性,快速入门的Hello World等内容引领读者入门,从而进入数据批处理的世界。基本篇重点讲述了数据批处理的核心概念、典型的作业配置、作业步配置,以及Spring Batch框架中经典的三步走策略:数据读、数据处理和数据写,详尽地介绍了如何对CVS格式文件、JSON格式文件、XML文件、数据库和JMS消息队列中的数据进行读操作、处理和写操作,对于数据库的操作详细介绍了使用JDBC、Hibernate、存储过程、JPA、Ibatis等处理。高级篇提供了高性能、高可靠性、并行处理的能力,分别向读者展示了如何实现作业流的控制,包括顺序流、条件流、并行流,如何实现健壮的作业,包括跳过、重试和重启等,如何实现扩展作业及并行作业,包括多线程作业、并行作业、远程作业和分区作业等,从而实现分布式、高性能、高扩展性的数据批处理作业。


 Spring Batch 批处理框架下载



发布书评

 
 


精彩短评 (总计3条)

  •     它山之石,Spring batch最大的优点就是把批处理组件化了,批处理不再是一个长长的mian,而是各种可复用的组件组合在一起,二是对事务和重试机制支持的很完善,适合严肃的数据处理场景。缺点当然是用起来太麻烦,思想可以用在脚本语言,但永远不会用Java去做批处理……
  •     国内第一本介绍Spring Batch图书。
  •     面面俱到,难度不大,用到时再做参考。只可惜版本发布多,书中内容很容易过时
 

外国儿童文学,篆刻,百科,生物科学,科普,初中通用,育儿亲子,美容护肤PDF图书下载,。 零度图书网 

零度图书网 @ 2024