为什么要写这本书?
我们知道,Spring Boot是一个集成性的开源框架,内部整合了很多第三方组件和框架。这些组件和框架应用如此之广泛,以至于大家反而往往对如何更好地使用Spring Boot自身的功能特性并不是很重视。事实上,Spring Boot自身的功能特性同样非常丰富,而且在使用上也存在一些最佳实践。
本书对Spring Boot的各项功能特性及其最佳实践、实现原理展开讨论,涵盖了核心容器、Web服务、内置缓存、数据访问、并发编程、监控和扩展等一系列核心主题,这些核心主题也广泛应用于Spring家族中的其他开发框架。
第一部分:Spring Boot概述
第1章引入Spring Boot
Spring Boot是一款集成性的开源框架,内部整合了很多第三方组件和框架。这些组件和框架应用如此之广泛,以至于大家反而对如何更好地使用Spring Boot自身的功能特性并不是很重视。事实上,Spring Boot自身的功能特性同样非常丰富,而且在使用上也存在一些最佳实践。
- Spring基础框架
第二部分:核心容器
第2章依赖注入类型和原理
- Spring依赖注入原理分析
本章系统分析了Spring IoC容器提供的依赖注入类型,包括字段注入、构造器注入和Setter方法注入。我们针对每个注入类型给出了对应的代码示例,并分析了它们的优缺点,给出了使用建议。
第3章面向切面概念和实践
- Spring AOP核心概念
本章系统分析了Spring所提供的AOP设计思想和实现方案。在使用Spring开发应用程序的过程中,AOP是一项基础功能,可以说是无处不在。我们详细描述了Spring AOP中的核心概念,并通过一个完整案例提供对应的使用方法。
第三部分Web服务
第4章构建轻量级Web技术体系
- Spring HATEOAS
本章还系统讲解了GraphQL规范以及新的开发框架SpringGraphQL。在前后端分离的开发模式大行其道的当下,GraphQL比传统的RESTful API更加具有灵活性和扩展性,并能显著减少前后端交互所需要的沟通和开发成本。
第5章应用响应式Web开发组件
- 响应式编程和Spring Boot
本章系统分析了响应式编程的概念和实现方法,以及Spring Boot框架所提供的针对响应式
Web服务开发的解决方案。从技术演进的过程和趋势而言,响应式编程的出现有其必然性。
第四部分内置缓存
- 第6章打造高性能系统缓存
- 缓存实现原理
本章对Spring缓存的方方面面展开了讨论,包括缓存注解的使用方法、缓存键的管理策略、缓存的配置方法、缓存的实现原理,并通过一个完整的案例展示了基于Redis的Spring缓存机制如何应用到应用程序中。
第7章为安全控制添加认证缓存
- Spring Security安全框架
本章对Spring Security认证缓存的方方面面展开了讨论,包括认证缓存UserCache组件以及与用户认证紧密相关的UserDetails和AuthenticationProvider组件。我们通过一个完整的案例演示了如何在用户认证过程中集成UserCache,以及如何实现自定义用户认证。
第五部分数据访问
- 第8章Spring JDBC解决方案
- Spring JDBC解决方案
本章先从JDBC规范开始讲起,给出了Spring家族中针对关系型数据库访问的一大解决方案,即Spring JDBC。Spring JDBC中包含了一组非常有用的工具类来简化数据操作,最典型的就是JdbcTemplate模板工具类。
第9章应用Spring ORM最佳实践
- Spring Data架构与应用
本章对基于Spring Data JPA完成数据操作的方法和技巧都做了一一介绍。在Spring Boot中,使用Spring Data JPA完成对关系型数据库的访问是我们推荐的实现方法。Spring Data JPA具有ORM框架的通用功能,同时还添加了方法名衍生查询和Specification机制等扩展性功能,在应用上简单而高效。
第六部分并发编程
第10章解析Spring Async并发编程
- Spring Web异步处理
第11章使用任务执行器和调度器
- 任务执行器和调度器实战经验
第七部分监控和扩展
第12章为应用程序添加系统监控
- 系统监控实战经验
第13章Spring Boot生态体系及扩展
- Spring Boot Starter原理与应用