1 什么是 Spring Boot ?
解释一下:Spring Boot 可以构建一切。Spring Boot 设计之初就是为了最少的配置,最快的速度来启动和运行 Spring 项目。Spring Boot 使用特定的配置来构建生产就绪型的项目。
Spring Boot 的特性:
- 使用 Spring 项目引导页面可以在几秒构建一个项目
- 方便对外输出各种形式的服务,如 REST API、WebSocket、Web、Streaming、Tasks
- 非常简洁的安全策略集成
- 支持关系数据库和非关系数据库
- 支持运行期内嵌容器,如 Tomcat、Jetty
- 强大的开发包,支持热启动
- 自动管理依赖
- 自带应用监控
- 支持各种 IED,如 IntelliJ IDEA、NetBeans
2 为什么学 Spring Boot
通过谷歌趋势来看 Spring Boot 在美国的使用情况发现,中国和美国人民使用 Spring Boot 的整体频率保持一致,看来国内技术人同步全球的技术频率越来越快。
Spring Boot 不是为了取代 Spring ,Spring Boot 基于 Spring 开发,是为了让人们更容易的使用 Spring。
3 Spring Boot 和微服务架构
互联网产品需求变化快,用户群体庞大。在这种情况下,如何构建灵活、易扩展的系统,快速应对需求的变化;并且,如何保证系统的可伸缩性、高可用性,成为系统架构面临的挑战。
开发一个大型而全的系统已经很难满足市场对技术的需求,于是从单独架构发展到分布式架构,又从分布式架构发展到 SOA 架构,服务不断的被拆分和分解,粒度也越来越小,直到微服务架构的诞生。
Spring Boot 的研发融合了微服务架构的理念,实现了在 Java 领域内微服务架构落地的技术支撑。Spring Boot 在开发、测试、部署、运维等方面都做了大量的优化,可以快速响应需求、独立完成开发部署上线。从目前众多的技术栈对比来看 Spring Boot 是 Java 领域微服务架构最优落地技术没有之一。
4 Spring Boot 的优势
Spring Boot 集成了大量常用的第三方库配置(如 Redis、MongoDB、JPA、RabbitMQ、Quartz 等),几乎可以零配置的开箱即用,使开发者能够更加专注于业务逻辑。
Spring Boot 开发项目的优势:
- Spring Boot 快速集成各种解决方案提升开发效率。
- Spring Boot 使配置变简单,提供了丰富的 Starters,集成主流开源产品只需简单配置。
- Spring Boot 使部署变简单,内嵌启动容器,一个命令即可启动项目,结合 Jenkins、Docker 自动化运维非常容易实现。
- Spring Boot 使监控变简单,自带监控组件,使用 Actuator 轻松监控服务各项状态。
Spring Boot 就是尽可能的简化应用开发的门槛。解放出更多生产力,让开发人员将精力集中在业务上,而不是各种配置、语法所设置的门槛上。
Spring Boot 所集成的技术栈,几乎都是各互联网公司在使用的技术,想进入或者跳槽互联网公司的技术人可以跟着 Spring Boot 的路线去学习,基本可以了解国内外互联网公司的技术特点。
5 Spring Boot 学习
2016 年,我还在互联网金融公司时就接触到了 Spring Boot,并迅速被 Spring Boot 简洁快速开发的魅力所吸引,随即将 Spring Boot 引进到公司项目中。在 Spring Boot 学习初期,为了鼓励团队学习 ,创建了一个 Spring Boot 开源项目:云收藏(https://github.com/cloudfavorites/favorites-web),目前这个项目在 Github 上面已经有 2200 多个 Star。经过这个项目历练之后,技术团队再也不愿意回到以前的开发模式中,Spring Boot 成为后期项目必备技术。
去年,Spring Boot 历时 4 年发展推出了 2.0 正式版, Spring Boot 2.0 融入了很多新技术、新特性,同时在性能优化方面提升明显。网络上关于 Spring Boot 2.0 的教程比较繁杂,为了方便大家快速学习,我将结合工作中 Spring Boot 实战经验,以 GitChat 精品课的形式,为大家介绍 Spring Boot 2.0 技术栈的使用。
本课程共包含五大部分,由浅入深的讲解了 Spring Boot 技术栈的使用场景和实践方式:
- PART 1:从零开始认识 Spring Boot;
- PART 2:项目中最常用的 Web 相关技术;
- PART 3:Spring Boot 和数据库的技术实践;
- PART 4:Spring Boot 如何集成 MQ、缓存、NoSQL 等中间件;
- PART 5:综合实践。
6 总结
这是我们目前写过最全的一个 Spring Boot 2.0 系列课程,感觉像写了一本小书,想深入学习 Spring Boot 技术的同学可以关注。订购本课程可获得专属海报,分享专属海报每成功邀请一位好友购买,即可获得 25% 的返现奖励(24元)。