Spring Boot 教程

Spring Boot

Spring Boot 是由 Pivotal 团队开发的 基于 Java 的开源框架,常用于创建微服务。Spring Boot 设计目的是用来简化Spring 应用的初始搭建以及开发过程。Spring Boot 框架使用了特定的注解方式来进行配置,从而使开发人员不再需要定义样板化的配置。

Spring Boot 在快速应用开发领域发展迅速,成为 Java 语言开发微服务的首选框架。


1. Spring Boot 产生背景

随着动态语言的流行(Ruby、Groovy、Scala、Node.js),Java 的开发显得格外笨重,繁多的配置、低下的开发效率、复杂的部署流程以及第三方技术集成难度大。

随着微服务的广泛应用,快速开发的模式越来越流行,Java 的原始的开发模式不再适应这种趋势,于是Spring Boot 应运而生。

使用 Spring Boot 很容易创建一个独立运行(运行 jar,内嵌 Servlet 容器)、准生产级别的基于 Spring 框架的项目,可以不用或者只需要很少的 Spring 配置。

2. Spring Boot 核心功能

1)独立运行的 Spring 项目

Spring Boot 可以以 jar 包的形式独立运行,运行一个 Spring Boot 项目只需通过 java -jar xx.jar 来运行。

2)内嵌 Servlet 容器

Spring Boot 可选择内嵌 Tomcat、Jetty 或者 Undertow,这样我们无须以 war 包形式部署项目。

3)提供 starter 简化 Maven 配置

Spring 提供了一系列的 starter pom 模板来简化 Maven 的依赖加载,例如,当你使用了spring-boot-starter-web 时,会自动加入依赖包。

4)自动配置 Spring

Spring Boot 会根据在类路径中的 jar 包、类,为 jar 包里的类自动配置 Bean,这样会极大地减少我们要使用的配置。当然,Spring Boot 只是考虑了大多数的开发场景,并不是所有的场景,若在实际开发中我们需要自动配置 Bean,而 Spring Boot 没有提供支持,则可以自定义自动配置。

5)准生产的应用监控

Spring Boot 提供基于 http、ssh、telnet 对运行时的项目进行监控。

6)无代码生成和 xml 配置

Spring Boot 的神奇的不是借助于代码生成来实现的,而是通过条件注解来实现的,这是 Spring 4.x 及以上版本提供的新特性。

Spring 4.x 及以上版本提倡使用 Java 配置和注解配置组合,而 Spring Boot 不需要任何 xml 配置即可实现 Spring 的所有配置。

3. Spring Boot的优缺点

1)优点

  • 快速构建项目。
  • 对主流开发框架的无配置集成。
  • 项目可独立运行,无须外部依赖Servlet容器。
  • 提供运行时的应用监控。
  • 极大地提高了开发、部署效率。
  • 与云计算的天然集成。

2)缺点

  • 版本迭代速度很快,一些模块改动很大。
  • 由于不用自己做配置,报错时很难定位。
  • 网上现成的解决方案比较少。

3. 为什么选择 Spring Boot

选择 Spring Boot,因为它提供的功能和优点如下:

  • 它提供了一种灵活的方法来配置 Java Bean,XML 配置和数据库事务。
  • 它提供强大的批处理和管理 REST 端点。
  • 在Spring Boot中,一切都是自动配置的; 无需手动配置。
  • 它提供基于注释的spring应用程序。
  • 简化依赖管理。
  • 它包括嵌入式Servlet容器。

4. 本课程的内容包括:

下一章:Spring Boot 快速入门

什么是Spring Boot? Spring Boot 简化了创建和开发一个新的 Spring 应用的过程。我们会逐步创建第一个 Spring Boot 项目。1. 生成 Spring Boot 项目模板:为方便初始化项目,Spring Boot 给我们提供一个项目模板生成网站。2. Spring Boot 项目结构说明。3. 添加 WEB 模块。4. 运行 Spring Boot 项目。