《Spring Batch批处理框架》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:刘相编著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2015
  • ISBN:9787121252419
  • 页数:392 页
图书介绍:本书全面、系统地介绍了批处理框架Spring Batch,通过详尽的实战示例向读者展示了Spring Batch框架对大数据批处理的基本开发能力,并对框架的架构设计、源码做了特定的剖析;在帮助读者掌握Spring Batch框架基本功能、高级功能的同时,深入剖析了Spring Batch框架的设计原理,帮助读者可以游刃有余地掌握Spring Batch框架。

第1篇 入门篇 2

第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 支持Java 5 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篇 基本篇 28

第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 ItemnReader 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 HibernateCursorItemReader 167

6.5.3 StoredProcedureItemReader 171

6.5.4 JdbcPagingItemReader 174

6.5.5 HibernatePagingItemReader 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 扩展MultiResourceItemWriter 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 SimpleMailMessageItemWriter 258

7.10 服务复用 262

7.10.1 ItemWriterAdapter 262

7.10.2 PropertyExtractingDelegatingItemWriter 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篇 高级篇 300

第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

后记 392