书籍详情
Spring Boot进阶:原理、实战与面试题分析
作者:郑天民
出版社:机械工业出版社
出版时间:2022-06-01
ISBN:9787111706748
定价:¥99.00
购买这本书可以去
内容简介
内容简介这是一本能带领读者全方位掌握Spring Boot技术体系的功能、原理和Z佳实践的著作,能帮助读者在Spring Boot领域快速实现从入门到进阶。全书涵盖Spring Boot的6大核心主题:核心容器、Web服务、缓存、数据访问、并发执行、监控与扩展,内容具有以下4大特性:?针对性:系统梳理了6个主题所包含技术的功能特性、工作原理、实践方案,读者能快速掌握其核心技术、底层设计理念和生态扩展;?创新性:与同类书不同,本书搜集并分析了每个主题下的高频面试题,旨在帮助读者在面试和晋升时事半功倍;?实战性:注重实用性,基于作者近15年的经验,通过丰富的场景案例提供了大量应用方案和Z佳实践;?前瞻性:不仅系统讲解了常用的核心技术,而且还讲解了时下流行的云原生、RSocket等前沿技术及其应用方案。
作者简介
作者介绍郑天民(作者照片)资深架构师和技术专家,有近15年的软件研发和架构经验。现担任某知名健康科技公司技术总监,先后就职于多家大型上市公司和互联网独角兽公司,担任系统架构师、技术总监和CTO等职务。对架构设计和技术管理有深入的理解,积累了丰富的经验,研发和主持过10余个面向研发人员的技术和管理类培训课程。热衷于总结和分享,著作有《系统架构设计》等,译作有《Spring响应式编程》等。 阿里云MVP、腾讯云TVP、TGO鲲鹏会会员。
目录
前言
部分 Spring Boot概述
第1章 引入Spring Boot 2
1.1 Spring核心概念 2
1.1.1 Spring基础框架 3
1.1.2 Spring技术生态 4
1.2 开发Spring Boot应用程序 5
1.2.1 从Spring到Spring Boot 5
1.2.2 Spring Boot应用程序结构和示例 6
1.2.3 Spring Boot配置体系 11
1.3 Spring Boot实战内容和案例 13
1.3.1 核心容器 14
1.3.2 Web服务 15
1.3.3 内置缓存 16
1.3.4 数据访问 17
1.3.5 并发编程 19
1.3.6 监控和扩展 20
1.4 本章小结 22
第二部分 核心容器
第2章 依赖注入类型和原理 24
2.1 Spring依赖注入类型 24
2.1.1 字段注入 25
2.1.2 构造器注入 26
2.1.3 Setter方法注入 27
2.2 Spring依赖注入原理分析 28
2.2.1 Bean的注册 29
2.2.2 Bean的实例化 31
2.3 Spring循环依赖案例分析 33
2.3.1 三级缓存结构 34
2.3.2 循环依赖解决方案 36
2.3.3 消除循环依赖案例分析 37
2.4 Spring依赖注入实战经验 42
2.4.1 把握Bean的作用域 42
2.4.2 灵活使用注解配置 43
2.4.3 设置组件扫描范围 44
2.4.4 不同配置的性能分析 44
2.5 Spring依赖注入面试题分析 45
2.6 本章小结 46
第3章 面向切面概念和实践 47
3.1 面向切面与Spring AOP 48
3.1.1 Spring AOP核心概念 48
3.1.2 Spring AOP案例分析 49
3.2 动态代理机制与Spring AOP 52
3.2.1 JDK动态代理 53
3.2.2 CGLIB动态代理 54
3.2.3 ProxyFactoryBean 55
3.3 AOP代理机制对性能的影响案例分析 57
3.3.1 测试案例设计 57
3.3.2 案例结果分析 59
3.4 AOP实战经验 59
3.4.1 活用切点表达式 59
3.4.2 确保类内方法调用能够应用代理 61
3.4.3 避免代理机制引起多次初始化过程 62
3.4.4 优先使用JDK动态代理 62
3.5 Spring AOP面试题分析 62
3.6 本章小结 63
第三部分 Web 服务
第4章 构建轻量级Web技术体系 66
4.1 Spring WebMVC 66
4.1.1 创建Web服务 67
4.1.2 消费Web服务 69
4.1.3 RestTemplate远程调用原理分析 71
4.1.4 Spring WebMVC案例分析 80
4.2 Spring HATEOAS 83
4.2.1 HATEOAS和HAL 84
4.2.2 引入Spring HATEOAS 87
4.2.3 Spring HATEOAS案例分析 87
4.3 Spring GraphQL 93
4.3.1 GraphQL与RESTful API 94
4.3.2 集成Spring和GraphQL 96
4.3.3 Spring GraphQL案例分析 100
4.4 轻量级Web实战经验 105
4.4.1 设计合理的HTTP端点 106
4.4.2 开发自解释型Open API 106
4.4.3 使用GraphQL替代RESTful API 107
4.5 轻量级Web面试题分析 108
4.6 本章小结 110
第5章 应用响应式Web开发组件 111
5.1 响应式编程和Spring Boot 111
5.1.1 响应式流规范和实现框架 111
5.1.2 响应式编程的应用场景分析 115
5.1.3 Spring响应式编程组件 117
5.2 Spring WebFlux 119
5.2.1 对比WebMVC和WebFlux架构 119
5.2.2 创建响应式Web API 121
5.2.3 消费响应式Web API 123
5.2.4 Spring WebFlux案例分析 124
5.3 Spring RSocket 129
5.3.1 RSocket协议 129
5.3.2 RSocket编程模型 130
5.3.3 Spring RSocket案例分析 132
5.4 响应式Web实战经验 135
5.4.1 使用非阻塞式Web服务提升系统性能 135
5.4.2 构建全栈响应式服务体系 137
5.4.3 使用RSocket替代HTTP 138
5.5 响应式Web面试题分析 139
5.6 本章小结 140
第四部分 内置缓存
第6章 打造高性能系统缓存 142
6.1 缓存注解 142
6.1.1 @Cacheable注解 143
6.1.2 @CachePut注解 145
6.1.3 @CacheEvict注解 145
6.2 缓存键管理 146
6.2.1 自定义键生成策略 146
6.2.2 默认键生成策略 147
6.3 缓存配置 147
6.4 Spring缓存案例分析 150
6.5 缓存实现原理 154
6.5.1 Cache和CacheManager接口 155
6.5.2 CacheInterceptor拦截器 158
6.6 系统缓存实战经验 160
6.6.1 使用自定义缓存注解 161
6.6.2 使用自定义缓存键生成器 161
6.6.3 自定义Cache和CacheManager 162
6.7 系统缓存面试题分析 164
6.8 本章小结 165
第7章 为安全控制添加认证缓存 166
7.1 Spring Security安全框架 166
7.1.1 Spring Security认证架构 166
7.1.2 Spring Security用户认证配置实例 168
7.2 Spring Security与认证缓存 169
7.2.1 安全性处理对性能的影响 169
7.2.2 认证缓存 170
7.3 Spring Security认证缓存案例分析 172
7.3.1 初始化用户认证数
部分 Spring Boot概述
第1章 引入Spring Boot 2
1.1 Spring核心概念 2
1.1.1 Spring基础框架 3
1.1.2 Spring技术生态 4
1.2 开发Spring Boot应用程序 5
1.2.1 从Spring到Spring Boot 5
1.2.2 Spring Boot应用程序结构和示例 6
1.2.3 Spring Boot配置体系 11
1.3 Spring Boot实战内容和案例 13
1.3.1 核心容器 14
1.3.2 Web服务 15
1.3.3 内置缓存 16
1.3.4 数据访问 17
1.3.5 并发编程 19
1.3.6 监控和扩展 20
1.4 本章小结 22
第二部分 核心容器
第2章 依赖注入类型和原理 24
2.1 Spring依赖注入类型 24
2.1.1 字段注入 25
2.1.2 构造器注入 26
2.1.3 Setter方法注入 27
2.2 Spring依赖注入原理分析 28
2.2.1 Bean的注册 29
2.2.2 Bean的实例化 31
2.3 Spring循环依赖案例分析 33
2.3.1 三级缓存结构 34
2.3.2 循环依赖解决方案 36
2.3.3 消除循环依赖案例分析 37
2.4 Spring依赖注入实战经验 42
2.4.1 把握Bean的作用域 42
2.4.2 灵活使用注解配置 43
2.4.3 设置组件扫描范围 44
2.4.4 不同配置的性能分析 44
2.5 Spring依赖注入面试题分析 45
2.6 本章小结 46
第3章 面向切面概念和实践 47
3.1 面向切面与Spring AOP 48
3.1.1 Spring AOP核心概念 48
3.1.2 Spring AOP案例分析 49
3.2 动态代理机制与Spring AOP 52
3.2.1 JDK动态代理 53
3.2.2 CGLIB动态代理 54
3.2.3 ProxyFactoryBean 55
3.3 AOP代理机制对性能的影响案例分析 57
3.3.1 测试案例设计 57
3.3.2 案例结果分析 59
3.4 AOP实战经验 59
3.4.1 活用切点表达式 59
3.4.2 确保类内方法调用能够应用代理 61
3.4.3 避免代理机制引起多次初始化过程 62
3.4.4 优先使用JDK动态代理 62
3.5 Spring AOP面试题分析 62
3.6 本章小结 63
第三部分 Web 服务
第4章 构建轻量级Web技术体系 66
4.1 Spring WebMVC 66
4.1.1 创建Web服务 67
4.1.2 消费Web服务 69
4.1.3 RestTemplate远程调用原理分析 71
4.1.4 Spring WebMVC案例分析 80
4.2 Spring HATEOAS 83
4.2.1 HATEOAS和HAL 84
4.2.2 引入Spring HATEOAS 87
4.2.3 Spring HATEOAS案例分析 87
4.3 Spring GraphQL 93
4.3.1 GraphQL与RESTful API 94
4.3.2 集成Spring和GraphQL 96
4.3.3 Spring GraphQL案例分析 100
4.4 轻量级Web实战经验 105
4.4.1 设计合理的HTTP端点 106
4.4.2 开发自解释型Open API 106
4.4.3 使用GraphQL替代RESTful API 107
4.5 轻量级Web面试题分析 108
4.6 本章小结 110
第5章 应用响应式Web开发组件 111
5.1 响应式编程和Spring Boot 111
5.1.1 响应式流规范和实现框架 111
5.1.2 响应式编程的应用场景分析 115
5.1.3 Spring响应式编程组件 117
5.2 Spring WebFlux 119
5.2.1 对比WebMVC和WebFlux架构 119
5.2.2 创建响应式Web API 121
5.2.3 消费响应式Web API 123
5.2.4 Spring WebFlux案例分析 124
5.3 Spring RSocket 129
5.3.1 RSocket协议 129
5.3.2 RSocket编程模型 130
5.3.3 Spring RSocket案例分析 132
5.4 响应式Web实战经验 135
5.4.1 使用非阻塞式Web服务提升系统性能 135
5.4.2 构建全栈响应式服务体系 137
5.4.3 使用RSocket替代HTTP 138
5.5 响应式Web面试题分析 139
5.6 本章小结 140
第四部分 内置缓存
第6章 打造高性能系统缓存 142
6.1 缓存注解 142
6.1.1 @Cacheable注解 143
6.1.2 @CachePut注解 145
6.1.3 @CacheEvict注解 145
6.2 缓存键管理 146
6.2.1 自定义键生成策略 146
6.2.2 默认键生成策略 147
6.3 缓存配置 147
6.4 Spring缓存案例分析 150
6.5 缓存实现原理 154
6.5.1 Cache和CacheManager接口 155
6.5.2 CacheInterceptor拦截器 158
6.6 系统缓存实战经验 160
6.6.1 使用自定义缓存注解 161
6.6.2 使用自定义缓存键生成器 161
6.6.3 自定义Cache和CacheManager 162
6.7 系统缓存面试题分析 164
6.8 本章小结 165
第7章 为安全控制添加认证缓存 166
7.1 Spring Security安全框架 166
7.1.1 Spring Security认证架构 166
7.1.2 Spring Security用户认证配置实例 168
7.2 Spring Security与认证缓存 169
7.2.1 安全性处理对性能的影响 169
7.2.2 认证缓存 170
7.3 Spring Security认证缓存案例分析 172
7.3.1 初始化用户认证数
猜您喜欢