《Java RESTful Web Service实战》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:韩陆著
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2014
  • ISBN:9787111478881
  • 页数:298 页
图书介绍:国内首本完整地、深度地讲解如何基于Java标准规范实现REST风格的Web服务的专著,阿里巴巴资深Java技术专家近10年开发经验结晶,3位业内著名技术专家联袂推荐!不仅深刻解读了最新的JAX-RS标准和其API设计,以及Jersey的使用要点和实现原理,而且还系统讲解了REST的基本理论,更重要的是从实践角度深度讲解了如何基于Jersey实现完整的、安全的、高性能的REST式的Web服务。

第—篇 够用就好——JAX-RS 2.0基础 2

第1章 JAX-RS 2.0入门 2

1.1 解读REST 2

1.1.1 一种架构风格 3

1.1.2 基本实现形式 3

1.2 解读REST服务 4

1.3 解读JAX-RS 5

1.4 Jersey项目概要 8

1.5 Java领域的其他REST实现 17

1.5.1 其他JAX-RS实现 18

1.5.2 其他REST实现 19

1.6 本章小结 20

第2章 JAX-RS 2.0快速实现 21

2.1 第一个Java REST服务 21

2.1.1 环境准备 22

2.1.2 创建服务 23

2.1.3 扩展服务 28

2.1.4 测试和运行服务 31

2.2 第一个Servlet容器服务 32

2.2.1 创建和分析Web服务 32

2.2.2 Jetty插件与REST服务 35

2.2.3 运行在Servlet容器 38

2.2.4 运行在Java EE容器 39

2.3 REST服务类型 40

2.4 REST应用描述 45

2.4.1 应用的描述 46

2.4.2 资源的描述 46

2.4.3 WADL的配置 47

2.5 第一个完整的REST服务 48

2.5.1 定义资源 48

2.5.2 集成Spring 51

2.5.3 集成JPA 53

2.5.4 集成jQuery 55

2.5.5 请求处理流程分析 57

2.6 REST调试工具 64

2.6.1 命令行调试工具cURL 64

2.6.2 基于浏览器的图形化调试插件 66

2.7 本章小结 69

第3章 REST API设计 70

3.1 REST统一接口 70

3.1.1 GET方法 71

3.1.2 PUT方法 73

3.1.3 DELETE方法 75

3.1.4 POST方法 76

3.1.5 WebDAV扩展方法 77

3.2 REST资源定位 79

3.2.1 资源地址设计 79

3.2.2 @QueryParam注解 81

3.2.3 @PathParam注解 83

3.2.4 @FormParam注解 86

3.2.5 @BeanParam注解 88

3.2.6 @CookieParam注解 88

3.2.7 @Context注解 89

3.3 REST传输格式 90

3.3.1 基本类型 90

3.3.2 文件类型 90

3.3.3 InputStream类型 91

3.3.4 Reader类型 92

3.3.5 XML类型 93

3.3.6 JSON类型 96

3.4 REST连通性 112

3.4.1 过渡型链接 113

3.4.2 结构型链接 114

3.5 REST响应处理 114

3.5.1 返回类型 115

3.5.2 处理异常 117

3.6 REST内容协商 119

3.6.1 @Produces注解 119

3.6.2 @Consumes注解 121

3.7 本章小结 122

第4章 REST请求处理 123

4.1 REST和AOP 123

4.2 Providers详解 124

4.2.1 实体Providers 124

4.2.2 上下文Providers 129

4.3 REST请求流程 130

4.4 REST过滤器 132

4.4.1 ClientRequestFilter 132

4.4.2 ContainerRequestFilter 133

4.4.3 ContainerResponseFilter 134

4.4.4 ClientResponseFilter 135

4.4.5 访问日志 136

4.5 REST拦截器 138

4.6 绑定机制 140

4.7 优先级 144

4.8 本章小结 145

第5章 REST客户端 146

5.1 客户端接口 146

5.1.1 Client接口 147

5.1.2 WebTarget接口 148

5.1.3 Invocation接口 148

5.2 资源释放 149

5.3 连接器 150

5.4 封装Client 153

5.5 本章小结 154

第二篇 全面掌握——JAX-RS 2.0进阶 156

第6章 REST安全 156

6.1 身份认证 157

6.1.1 基本认证 157

6.1.2 摘要认证 158

6.1.3 表单认证 158

6.1.4 证书认证 159

6.2 资源授权 160

6.2.1 容器管理权限 160

6.2.2 应用管理权限 163

6.3 认证与授权实现 163

6.3.1 基本认证与JDBCRealm 164

6.3.2 摘要认证与UserDatabase-Realm 170

6.3.3 表单认证与DataSource-Realm 173

6.3.4 表单认证与JAASRealm 177

6.3.5 证书认证与UserDatabase-Realm 180

6.4 JAX-RS 2.0实现 184

6.5 其他安全考虑 187

6.6 本章小结 188

第7章 REST测试 189

7.1 Jersey测试框架 189

7.2 单元测试 192

7.2.1 集成Spring的单元测试 192

7.2.2 异步测试 194

7.3 集成测试 194

7.4 日志增强 195

7.5 本章小结 195

第8章 REST推送与异步通信 196

8.1 服务器-浏览器通信 196

8.1.1 Polling技术 197

8.1.2 Comet技术 197

8.1.3 SSE技术 199

8.1.4 WebSocket技术 199

8.2 SSE详述 200

8.2.1 Java并发 200

8.2.2 SSE流程 202

8.2.3 SSE实现 204

8.3 异步通信 209

8.4 JAX-RS 2.0实现异步通信 211

8.4.1 服务端实现 211

8.4.2 客户端实现和测试 213

8.5 本章小结 215

第9章 Jersey 1.x迁移 216

9.1 变更Maven依赖定义 216

9.2 客户端迁移 217

9.2.1 Client接口迁移 217

9.2.2 WebTarget接口迁移 218

9.2.3 QueryParam 219

9.3 服务器端迁移 219

9.4 本章小结 220

第10章 JAX-RS调优 221

10.1 使用缓存优化负载 221

10.1.1 缓存协商 221

10.1.2 条件GET 223

10.1.3 REST缓存实践 224

10.1.4 ab测试 226

10.2 使用版本号优化服务 226

10.2.1 何时使用版本号 227

10.2.2 如何使用版本号 227

10.3 使用参数配置优化服务 229

10.3.1 通用配置 229

10.3.2 服务器端配置 230

10.3.3 客户端配置 231

10.4 Java虚拟机调优 232

10.4.1 虚拟机概述 232

10.4.2 内存溢出与内存泄漏 235

10.5 本章小结 236

第三篇 实践分享——JAX-RS 2.0综合 238

第11章 统一自动化测试平台 238

11.1 ATUP的定义 238

11.1.1 需求仓库 239

11.1.2 需求分析 241

11.1.3 迭代规划 242

11.2 ATUP的设计 244

11.2.1 开发和部署环境 244

11.2.2 模块定义和拓扑 247

11.2.3 持续集成流程 248

11.3 ATUP的实现 250

11.3.1 Sprint1核心功能 250

11.3.2 Sprint2模块功能 281

11.3.3 Iteration1的演示和回顾 288

11.3.4 Sprint3持续交付 291

11.3.5 交付和总结 293

11.4 本章小结 293

附录 Web简史 294

参考资料 297

后记 298