技术维度
第一部分(1~5章),针对性地介绍了Spring Boot入门、数据库的使用和访问性能提升、界面设计、安全设计等重要技术知识,以实用性为主,旨在帮助读者快速掌握Spring Boot开发方法和精髓,尽快融入生产实践中。 实践维度
第二部分(6~9章),用生产环境中的实际案例讲解了如何使用Spring Boot开发分布式应用和云应用,以及如何用微服务构建高可用的服务平台,实践性极强。 原理维度
第三部分(10~12章),从源码层面着重分析了Spring Boot的程序加载、自动配置、数据管理、Spring Cloud的配置管理、发现服务和负载均衡服务等核心功能的实现原理,旨在帮助读者能更深刻地理解Spring Boot开发,掌握其精髓。
- 1.1 配置开发环境
- 1.1.1 安装JDK
- 1.1.2 安装InterlliJ IDEA
- 1.1.3 安装Apache Maven
- 1.1.4 安装Git客户端
- 1.2 创建项目工程
- 1.2.1 使用Maven新建项目
- 1.2.2 使用Spring Initializr新建项目
- 1.3 使用Spring Boot
- 1.3.1 Maven依赖管理
- 1.3.2 一个简单的实例
- 1.4 运行与发布
- 1.4.1 在IDEA环境中运行
- 1.4.2 将应用打包发布
- 1.5 关于Spring Boot配置
- 1.6 小结
- 2.1 使用MySQL
- 2.1.1 MySQL依赖配置
- 2.1.2 实体建模
- 2.1.3 实体持久化
- 2.1.4 MySQL测试
- 2.2 使用Redis
- 2.2.1 Redis依赖配置
- 2.2.2 创建Redis服务类
- 2.2.3 Redis测试
- 2.3 使用MongoDB
- 2.3.1 MongoDB依赖配置
- 2.3.2 文档建模
- 2.3.3 文档持久化
- 2.3.4 MongoDB测试
- 2.4 使用Neo4j
- 2.4.1 Neo4j依赖配置
- 2.4.2 节点和关系实体建模
- 2.4.3 节点实体持久化
- 2.4.4 Neo4j测试
- 2.5 小结
- 3.1 模型设计
- 3.1.1 节点实体建模
- 3.1.2 关系实体建模
- 3.1.3 分页查询设计
- 3.2 控制器设计
- 3.2.1 新建控制器
- 3.2.2 查看控制器
- 3.2.3 修改控制器
- 3.2.4 删除控制器
- 3.2.5 分页查询控制器
- 3.3 使用Thymeleaf模板
- 3.3.1 Thymeleaf配置
- 3.3.2 Thymeleaf功能简介
- 3.4 视图设计
- 3.4.1 列表视图设计
- 3.4.2 新建视图设计
- 3.4.3 查看视图设计
- 3.4.4 修改视图设计
- 3.4.5 删除视图设计
- 3.5 运行与发布
- 3.6 小结
- 4.1 使用Druid
- 4.1.1 配置Druid依赖
- 4.1.2 关于XML配置
- 4.1.3 Druid数据源配置
- 4.1.4 开启监控功能
- 4.2 扩展JPA功能
- 4.2.1 扩展JPA接口
- 4.2.2 装配自定义的扩展接口
- 4.2.3 使用扩展接口
- 4.3 使用Redis做缓存
- 4.3.1 使用Spring Cache注解
- 4.3.2 使用RedisTemplate
- 4.4 Web应用模块
- 4.4.1 引用数据管理模块
- 4.4.2 Web应用配置
- 4.5 运行与发布
- 4.6 小结
- 5.1 依赖配置管理
- 5.2 安全策略配置
- 5.2.1 权限管理规则
- 5.2.2 登录成功处理器
- 5.2.3 防攻击策略
- 5.2.4 记住登录状态
- 5.3 登录认证设计
- 5.3.1 用户实体建模
- 5.3.2 用户身份验证
- 5.3.3 登录界面设计
- 5.3.4 验证码验证
- 5.4 权限管理设计
- 5.4.1 权限管理配置
- 5.4.2 权限管理过滤器
- 5.4.3 权限配置资源管理器
- 5.4.4 权限管理决断器
- 5.5 根据权限设置链接
- 5.6 运行与发布
- 5.6.1 系统初始化
- 5.6.2 系统运行与发布
- 5.7 小结
- 6.1 模块化设计
- 6.2 登录认证模块
- 6.2.1 使用OAuth2
- 6.2.2 创建数字证书
- 6.2.3 认证服务端配置
- 6.3 安全配置模块
- 6.4 SSO客户端
- 6.4.1 客户端配置
- 6.4.2 登录登出设计
- 6.5 共享资源服务
- 6.5.1 提供共享资源接口
- 6.5.2 使用共享资源
- 6.5.3 查询登录用户的详细信息
- 6.6 运行与发布
- 6.7 小结
- 7.1 FastDFS安装
- 7.1.1 下载安装包
- 7.1.2 安装服务
- 7.1.3 Tracker Server配置
- 7.1.4 Storage Server配置
- 7.1.5 启动服务
- 7.1.6 客户端测试
- 7.2 FastFDS客户端
- 7.2.1 客户端配置
- 7.2.2 客户端服务类
- 7.3 使用定制方式上传图片
- 7.3.1 实体建模
- 7.3.2 上传图片
- 7.4 使用富文本编辑器上传图片
- 7.4.1 使用富文本编辑器
- 7.4.2 实现文件上传
- 7.5 使用本地文件库
- 7.5.1 本地文件库建模
- 7.5.2 文件保存方法
- 7.5.3 文件库管理
- 7.6 运行与发布
- 7.7 小结
- 8.1 使用配置管理
- 8.1.1 创建配置管理服务器
- 8.1.2 使用配置管理的客户端
- 8.1.3 实现在线更新
- 8.1.4 更新所有客户端的配置
- 8.2 使用发现服务
- 8.2.1 创建发现服务器
- 8.2.2 使用发现服务的客户端配置
- 8.2.3 发现服务器测试
- 8.3 使用动态路由和断路器
- 8.3.1 依赖配置
- 8.3.2 共享REST资源
- 8.3.3 通过路由访问REST资源
- 8.3.4 使用断路器功能
- 8.3.5 路由器和断路器测试
- 8.4 使用监控服务
- 8.4.1 创建监控服务器
- 8.4.2 监控服务器测试
- 8.5 运行与发布
- 8.6 小结
- 9.1 使用Docker
- 9.1.1 Docker安装
- 9.1.2 Docker常用指令
- 9.1.3 使用Docker发布服务
- 9.2 创建和管理一个高性能的服务体系
- 9.2.1 安装docker-compose
- 9.2.2 docker-compose常用指令
- 9.2.3 使用docker-compose管理服务
- 9.3 使用Docker的其他负载均衡实施方法
- 9.3.1 使用Nginx与Docker构建负载均衡服务
- 9.3.2 阿里云的负载均衡设计实例
- 9.4 小结
- 10.1 Spring Boot主程序的功能
- 10.1.1 SpringApplication的run方法
- 10.1.2 创建应用上下文
- 10.1.3 自动加载
- 10.2 Spring Boot自动配置原理
- 10.2.1 自动配置的即插即用原理
- 10.2.2 自动配置的约定优先原理
- 10.3 提升应用的性能
- 10.3.1 更改加载配置的方式
- 10.3.2 将Tomcat换成Jetty
- 10.4 性能对照测试
- 10.5 小结
- 11.1 连接数据源的源代码分析
- 11.1.1 数据源类型和驱动
- 11.1.2 支持的数据库种类
- 11.1.3 与数据库服务器建立连接
- 11.2 数据存取功能实现原理
- 11.2.1 实体建模源代码分析
- 11.2.2 持久化实现原理
- 11.3 扩展数据存取的功能
- 11.3.1 扩展JPA功能
- 11.3.2 扩展Neo4j功能
- 11.4 小结
- 12.1 配置管理实现原理
- 12.1.1 在线更新流程
- 12.1.2 更新消息的分发原理
- 12.2 发现服务源代码剖析
- 12.2.1 服务端的服务注册功能
- 12.2.2 客户端注册和提取服务列表
- 12.3 负载均衡源代码剖析
- 12.4 分布式消息实现原理演示
- 12.4.1 消息生产者
- 12.4.2 消息消费者
- 12.5 小结