一、目录介绍
第一篇 够用就好——JAX-RS2.0基础
第1章 JAX-RS 2.0入门
1.1 解读REST 2
1.1.1 一种架构风格
1.1.2 基本实现形式
1.2 解读REST 服务
1.3 解读JAX-RS
1.4 Jersey 项目概要
1.5 Java 领域的其他REST 实现
1.5.1 其他JAX-RS 实现
1.5.2 其他REST 实现
1.6 本章小结
第2章 JAX-RS 2.0 快速实现
2.1 第一个Java REST 服务
2.1.1 环境准备
2.1.2 创建服务
2.1.3 扩展服务
2.1.4 测试和运行服务
2.2 第一个Servlet 容器服务
2.2.1 创建和分析Web 服务
2.2.2 Jetty 插件与REST 服务
2.2.3 运行在Servlet 容器
2.2.4 运行在Java EE 容器
2.3 REST 服务类型
2.4 REST 应用描述
2.4.1 应用的描述
2.4.2 资源的描述
2.4.3 WADL 的配置
2.5 第一个完整的REST 服务
2.5.1 定义资源
2.5.2 集成Spring
2.5.3 集成JPA
2.5.4 集成jQuery
2.5.5 请求处理流程分析
2.6 REST 调试工具
2.6.1 命令行调试工具cURL
2.6.2 基于浏览器的图形化调试插件
2.7 本章小结
第3章 REST API 设计
3.1 REST 统一接口
3.1.1 GET 方法
3.1.2 PUT 方法
3.1.3 DELETE 方法
3.1.4 POST 方法
3.1.5 WebDAV 扩展方法
3.2 REST 资源定位
3.2.1 资源地址设计
3.2.2 @QueryParam 注解
3.2.3 @PathParam 注解
3.2.4 @FormParam 注解
3.2.5 @BeanParam 注解
3.2.6 @CookieParam 注解
3.2.7 @Context 注解
3.3 REST 传输格式
3.3.1 基本类型
3.3.2 文件类型
3.3.3 InputStream 类型
3.3.4 Reader 类型
3.3.5 XML 类型
3.3.6 JSON 类型
3.4 REST 连通性
3.4.1 过渡型链接
3.4.2 结构型链接
3.5 REST 响应处理
3.5.1 返回类型
3.5.2 处理异常
3.6 REST 内容协商
3.6.1 @Produces 注解
3.6.2 @Consumes 注解
3.7 本章小结
第4章 REST请求处理
4.1 REST 和AOP
4.2 Providers 详解
4.2.1 实体Providers
4.2.2 上下文Providers
4.3 REST 请求流程
4.4 REST 过滤器
4.4.1 ClientRequestFilter
4.4.2 ContainerRequestFilter
4.4.3 ContainerResponseFilter
4.4.4 ClientResponseFilter
4.4.5 访问日志
4.5 REST 拦截器
4.6 绑定机制
4.7 优先级
4.8 本章小结
第5章 REST 客户端
5.1 客户端接口
5.1.1 Client 接口
5.1.2 WebTarget 接口
5.1.3 Invocation 接口
5.2 资源释放
5.3 连接器
5.4 封装Client
5.5 本章小结
第二篇 全面掌握——JAX-RS 2.0进阶
第6章 REST 安全
6.1 身份认证
6.1.1 基本认证
6.1.2 摘要认证
6.1.3 表单认证
6.1.4 证书认证
6.2 资源授权
6.2.1 容器管理权限
6.2.2 应用管理权限
6.3 认证与授权实现
6.3.1 基本认证与JDBCRealm
6.3.2 摘要认证与UserDatabase-Realm
6.3.3 表单认证与DataSource-Realm
6.3.4 表单认证与JAASRealm
6.3.5 证书认证与UserDatabase-Realm
6.4 JAX-RS 2.0 实现
6.5 其他安全考虑
6.6 本章小结
第7章 REST 测试
7.1 Jersey 测试框架
7.2 单元测试
7.2.1 集成Spring 的单元测试
7.2.2 异步测试
7.3 集成测试
7.4 日志增强
7.5 本章小结
第8章 REST 推送与异步通信
8.1 服务器—浏览器通信
8.1.1 Polling 技术
8.1.2 Comet 技术
8.1.3 SSE 技术
8.1.4 WebSocket 技术
8.2 SSE 详述
8.2.1 Java 并发
8.2.2 SSE 流程
8.2.3 SSE 实现
8.3 异步通信
8.4 JAX-RS 2.0 实现异步通信
8.4.1 服务端实现
8.4.2 客户端实现和测试
8.5 本章小结
第9章 Jersey 1.x 迁移
9.1 变更Maven 依赖定义
9.2 客户端迁移
9.2.1 Client 接口迁移
9.2.2 WebTarget 接口迁移
9.2.3 QueryParam
9.3 服务器端迁移
9.4 本章小结
第10章 JAX-RS 调优
10.1 使用缓存优化负载
10.1.1 缓存协商
10.1.2 条件GET
10.1.3 REST 缓存实践
10.1.4 ab 测试
10.2 使用版本号优化服务
10.2.1 何时使用版本号
10.2.2 如何使用版本号
10.3 使用参数配置优化服务
10.3.1 通用配置
10.3.2 服务器端配置
10.3.3 客户端配置
10.4 Java 虚拟机调优
10.4.1 虚拟机概述
10.4.2 内存溢出与内存泄漏
10.5 本章小结
第三篇 实践分享——JAX-RS 2.0 综合
第11章 统一自动化测试平台
11.1 ATUP 的定义
11.1.1 需求仓库
11.1.2 需求分析
11.1.3 迭代规划
11.2 ATUP 的设计
11.2.1 开发和部署环境
11.2.2 模块定义和拓扑
11.2.3 持续集成流程
11.3 ATUP 的实现
11.3.1 Sprint1 核心功能
11.3.2 Sprint2 模块功能
11.3.3 Iteration1 的演示和回顾
11.3.4 Sprint3 持续交付
11.3.5 交付和总结
11.4 本章小结
附录 Web简史
参考资料