[201710][Spring Boot 2 精髓 - 从构建小系统到架构分布式大系统][李家智][著]


第 1 章 Java EE 简介

1.1 Java EE

1.1.1 Java EE 架构

1.1.2 Java EE 的缺点

1.2 Spring

1.2.1 Spring IoC 容器和 AOP

1.2.2 Spring 的缺点

1.3 Spring Boot

1.4 Hello,Spring Boot

1.4.1 创建一个 Maven 工程

1.4.2 增加 Web 支持

1.4.3 Hello Spring Boot 示例

1.4.4 使用热部署

1.4.5 添加 REST 支持

第 2 章 Spring Boot 基础

2.1 检查 Java 环境与安装 Java

2.2 安装和配置 Maven

2.2.1 Maven 介绍

2.2.2 安装 Maven

2.2.3 设置 Maven

2.2.4 使用 IDE 设置 Maven

2.2.5 Maven 的常用命令

2.3 Spring 核心技术

2.3.1 Spring 的历史

2.3.2 Spring 容器介绍

2.3.2.1 Spring IoC
2.3.2.2 Spring 常用注解

2.3.3 Spring AOP 介绍

2.3.3.1 AOP 介绍
2.3.3.2 在 Spring Boot 中使用 AOP

第 3 章 MVC 框架

3.1 集成 MVC 框架

3.1.1 引入依赖

3.1.2 Web 应用目录结构

3.1.3 Java 包名结构

3.2 使用 Controller

3.3 URL 映射到方法

3.3.1 @RequestMapping

3.3.2 URL 路径匹配

3.3.3 HTTP method 匹配

3.3.4 consumes 和 produces

3.3.5 params 和 header 匹配

3.4 方法参数

3.4.1 PathVariable

3.4.2 Model&ModelAndView

3.4.3 JavaBean 接受 HTTP 参数

3.4.4 @RequestBody 接受 JSON

3.4.5 MultipartFile

3.4.6 @ModelAttribute

3.4.7 @InitBinder

3.5 验证框架

3.5.1 JSR-303

3.5.2 MVC 中使用 @Validated

3.5.3 自定义校验

3.6 WebMvcConfigurer

3.6.1 拦截器

3.6.2 跨域访问

3.6.3 格式化

3.6.4 注册 Controller

3.7 视图技术

3.7.1 使用 Freemarker

3.7.2 使用 Beetl

3.7.3 使用 Jackson

3.7.4 Redirect 和 Forward

3.8 通用错误处理

3.9 @Service 和 @Transactional

3.9.1 声明一个 Service 类

3.9.2 事务管理

3.10 curl 命令

第 4 章 视图技术

4.1 Beetl 模板引擎

4.1.1 安装 Beetl

4.1.2 设置定界符号和占位符

4.1.3 配置 Beetl

4.1.4 groupTemplate

4.2 使用变量

4.2.1 全局变量

4.2.2 局部变量

4.2.3 共享变量

4.2.4 模板变量

4.3 表达式

4.3.1 计算表达式

4.3.2 逻辑表达式

4.4 控制语句

4.4.1 循环语句

4.4.2 条件语句

4.4.3 try catch

4.5 函数调用

4.6 格式化函数

4.7 直接调用 Java

4.8 标签函数

4.9 HTML 标签

4.10 安全输出

4.11 高级功能

4.11.1 配置 Beetl

4.11.2 自定义函数

4.11.3 自定义格式化函数

4.11.4 自定义标签函数

4.11.5 自定义 HTML 标签

4.11.6 布局

4.11.7 AJAX 局部渲染

4.12 脚本引擎

4.13 JSON 技术

4.13.1 在 Spring Boot 中使用 Jackson

4.13.2 自定义 ObjectMapper

4.13.3 Jackson 的三种使用方式

4.13.4 Jackson 树遍历

4.13.5 对象绑定

4.13.6 流式操作

4.13.7 Jackson 注解

4.13.8 集合的反序列化

4.14 MVC 分离开发

4.14.1 集成 WebSimulate

4.14.2 模拟 JSON 响应

4.14.3 模拟模板渲染

第 5 章 数据库访问

5.1 配置数据源

5.2 Spring JDBC Template

5.2.1 查询

5.2.2 修改

5.2.3 JdbcTemplate 增强

5.3 BeetlSQL 介绍

5.3.1 BeetlSQL 功能概览

5.3.2 添加 Maven 依赖

5.3.3 配置 BeetlSQL

5.3.4 SQLManager

5.3.5 使用 SQL 文件

5.3.6 Mapper

5.3.7 使用实体

5.4 SQLManager 内置 CRUD

5.4.1 内置的插入 API

5.4.2 内置的更新(删除)API

5.4.3 内置的查询 API

5.4.4 代码生成方法

5.5 使用 sqlId

5.5.1 md 文件命名

5.5.2 md 文件构成

5.5.3 调用 sqlId

5.5.4 翻页查询

5.5.5 TailBean

5.5.6 ORM 查询

5.5.7 其他 API

5.5.8 Mapper 详解

5.6 BeetlSQL 的其他功能

5.6.1 常用函数和标签

5.6.2 主键设置

5.6.3 BeetlSQL 注解

5.6.4 NameConversion

5.6.5 锁

第 6 章 Spring Data JPA

6.1 集成 Spring Data JPA

6.1.1 集成数据源

6.1.2 配置 JPA 支持

6.1.3 创建 Entity

6.1.4 简化 Entity

6.2 Repository

6.2.1 CrudRepository

6.2.2 PagingAndSortingRepository

6.2.3 JpaRepository

6.2.4 持久化 Entity

6.2.5 Sort

6.2.6 Pageable 和 Page

6.2.7 基于方法名字查询

6.2.8 @Query 查询

6.2.9 使用 JPA Query

6.2.10 Example 查询

第 7 章 Spring Boot 配置

7.1 配置 Spring Boot

7.1.1 服务器配置

7.1.2 使用其他 Web 服务器

7.1.3 配置启动信息

7.1.4 配置浏览器显示 ico

7.2 日志配置

7.3 读取应用配置

7.3.1 Environment

7.3.2 @Value

7.3.3 @ConfigurationProperties

7.4 Spring Boot 自动装配

7.4.1 @Configuration 和 @Bean

7.4.2 Bean 条件装配

7.4.3 Class 条件装配

7.4.4 Environment 装配

7.4.5 其他条件装配

7.4.6 联合多个条件

7.4.7 Condition 接口

7.4.8 制作 Starter

第 8 章 部署 Spring Boot 应用

8.1 以 jar 文件运行

8.2 以 war 方式部署

8.3 多环境部署

8.4 @Profile 注解

第 9 章 Testing 单元测试

9.1 JUnit 介绍

9.1.1 JUnit 的相关概念

9.1.2 JUnit 测试

9.1.3 Assert

9.1.4 Suite

9.2 Spring Boot 单元测试

9.2.1 测试范围依赖

9.2.2 Spring Boot 测试脚手架

9.2.3 测试 Service

9.2.4 测试 MVC

9.2.5 完成 MVC 请求模拟

9.2.6 比较 MVC 的返回结果

9.2.7 JSON 比较

9.3 Mockito

9.3.1 模拟对象

9.3.2 模拟方法参数

9.3.3 模拟方法返回值

9.4 面向数据库应用的单元测试

9.4.1 @Sql

9.4.2 XLSUnit

9.4.3 XLSUnit 的基本用法

9.4.3.1 编写目录表
9.4.3.2 编写输入表
9.4.3.3 编写场景测试工作表
9.4.3.4 XLSUnit API

第 10 章 REST

10.1 REST 简介

10.1.1 REST 风格的架构

10.1.2 使用“api”作为上下文

10.1.3 增加一个版本标识

10.1.4 标识资源

10.1.5 确定 HTTP Method

10.1.6 确定 HTTP Status

10.1.7 REST VS. WebService

10.2 Spring Boot 集成 REST

10.2.1 集成 REST

10.2.2 @RestController

10.2.3 REST Client

10.2.3.1 RestTemplate
10.2.3.2 定制 RestTemplate

10.3 Swagger UI

10.3.1 集成 Swagger

10.3.2 Swagger 规范

10.3.3 接口描述

10.3.4 查询参数描述

10.3.5 URI 中的参数

10.3.6 HTTP 头参数

10.3.7 表单参数

10.3.8 文件上传参数

10.3.9 整个请求体作为参数

10.4 模拟 REST 服务

第 11 章 MongoDB

11.1 安装 MongoDB

11.2 使用 shell

11.2.1 指定数据库

11.2.2 插入文档

11.2.3 查询文档

11.2.4 更新操作

11.2.5 删除操作

11.3 Spring Boot 集成 MongoDB

11.4 增删改查

11.4.1 增加 API

11.4.2 根据主键查询 API

11.4.3 查询 API

11.4.4 修改 API

11.4.5 删除 API

11.4.6 使用 MongoDatabase

11.4.7 打印日志

第 12 章 Redis

12.1 安装 Redis

12.2 使用 redis-cli

12.2.1 安全设置

12.2.2 基本操作

12.2.3 keys

12.2.4 Redis List

12.2.5 Redis Hash

12.2.6 Set

12.2.7 Pub/Sub

12.3 Spring Boot 集成 Redis

12.4 使用 StringRedisTemplate

12.4.1 opsFor

12.4.2 绑定 Key 的操作

12.4.3 RedisConnection

12.4.4 Pub/Sub

12.5 序列化策略

12.5.1 默认序列化策略

12.5.2 自定义序列化策略

第 13 章 Elasticsearch

13.1 Elasticsearch 介绍

13.1.1 安装 Elasticsearch

13.1.2 Elasticsearch 的基本概念

13.2 使用 REST 访问 Elasticsearch

13.2.1 添加文档

13.2.2 根据主键查询

13.2.3 根据主键更新

13.2.4 根据主键删除

13.2.5 搜索文档

13.2.6 联合多个索引搜索

13.3 使用 RestTemplate 访问 ES

13.3.1 创建 Book

13.3.2 使用 RestTemplate 获取搜索结果

13.4 Spring Data Elastic

13.4.1 安装 Spring Data

13.4.2 编写 Entity

13.4.3 编写 Dao

13.4.4 编写 Controller

第 14 章 Cache

14.1 关于 Cache

14.1.1 Cache 的组件和概念

14.1.2 Cache 的单体应用

14.1.3 使用专有的 Cache 服务器

14.1.4 使用一二级缓存服务器

14.2 Spring Boot Cache

14.3 注释驱动缓存

14.3.1 @Cacheable

14.3.2 Key 生成器

14.3.3 @CachePut

14.3.4 @CacheEvict

14.3.5 @Caching

14.3.6 @CacheConfig

14.4 使用 Redis Cache

14.4.1 集成 Redis 缓存

14.4.2 禁止缓存

14.4.3 定制缓存

14.5 Redis 缓存原理

14.6 实现 Redis 两级缓存

14.6.1 实现 TwoLevelCacheManager

14.6.2 创建 RedisAndLocalCache

14.6.3 缓存同步说明

14.6.4 将代码组合在一起

第 15 章 Spring Session

15.1 水平扩展实现

15.2 Nginx 的安装和配置

15.2.1 安装 Nginx

15.2.2 配置 Nginx

15.3 Spring Session

15.3.1 Spring Session 介绍

15.3.2 使用 Redis

15.3.3 Nginx+Redis

第 16 章 Spring Boot 和 ZooKeeper

16.1 ZooKeeper

16.1.1 ZooKeeper 的数据结构

16.1.2 安装 ZooKeeper

16.1.3 ZooKeeper 的基本命令

16.1.4 领导选取演示

16.1.5 分布式锁演示

16.1.6 服务注册演示

16.2 Spring Boot 集成 ZooKeeper

16.2.1 集成 Curator

16.2.2 Curator API

16.3 实现分布式锁

16.4 服务注册

16.4.1 通过 ServiceDiscovery 注册服务

16.4.2 获取服务

16.5 领导选取

第 17 章 监控 Spring Boot 应用

17.1 安装 Acutator

17.2 HTTP 跟踪

17.3 日志查看

17.4 线程栈信息

17.5 内存信息

17.6 查看 URL 映射

17.7 查看 Spring 容器管理的 Bean

17.8 其他监控

17.9 编写自己的监控信息

17.9.1 编写 HealthIndicator

17.9.2 自定义监控

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐