1.简介
1.1 概述
Spring Boot makes it easy to create stand-alone, production-grade Spring based Applications that you can “just run”. We take an opinionated view of the Spring platform and third-party libraries so you can get started with minimum fuss. Most Spring Boot applications need minimal Spring configuration.
Spring Boot 可以轻松创建单独的,基于生产级的 Spring 应用程序,您需要做的可能“仅仅是去运行”。 我们提供了 Spring Platform 对 Spring 框架和第三方库进行处理,尽可能的降低使用的复杂度。大多数情况下 Spring Boot 应用只需要非常少的配置。
1.2 特点
- Create stand-alone Spring applications(创建独立的 spring 应用)
- Embed Tomcat, Jetty or Undertow directly (no need to deploy WAR files) (集成 tomcat,jetty,undertow 等内置容器,无需打包成 war 包)
- Provide opinionated ‘starter’ dependencies to simplify your build configuration (提供众多 starter 扩展来简化依赖配置)
- Automatically configure Spring and 3rd party libraries whenever possible(无论何时都可以自动装配 spring 和第三方依赖)
- Provide production-ready features such as metrics, health checks, and externalized configuration(提供生产环境特性,如 指标信息、健康检查和外部化配置等)
- Absolutely no code generation and no requirement for XML configuration (无需代码生成和 xml 配置)
1.3 对比 Spring
Spring 是一种生态,它包含各种组件,针对开发中存在的问题提供了多种解决方案;
Spring Boot 为快速启动且最小化配置的 Spring 应用而设计,并且具备用于构建生产级应用的各种特性,提供了一些内置 starter;
Spring 应用需要复杂配置,一般在需要在 xml 中配置各种依赖;Spring Boot 简化了这些配置,默认使用注解进行扫描,最多只需要在 application.properties 中提供额外配置;
使用 maven 构建 Spring 应用需要提供各种 pom 依赖;而 Spring Boot 只需要提供了 starter 即可,starter 中已经对所需依赖进行了封装;
Spring 应用最终需要打成 war 包放到 Severlet 容器中进行运行;而 Spring Boot 可以打成 jar 包,使用 java -jar 命令直接运行;
…
2.环境
- JDK 1.8.0_201
- Spring Boot 2.2.0.RELEASE
- 构建工具(apache maven 3.6.3)
- 开发工具(IntelliJ IDEA )
3.代码
3.1 代码结构
3.2 maven 依赖
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
3.3 java代码
DemoController.java
@RestController
public class DemoController {
@GetMapping("/demo")
public String demo() {
return "demo";
}
}
3.4 git 地址
spring-boot/spring-boot-01-demo
4.效果展示
启动 SpringBootDemoApplication.main 方法,访问如下地址,页面显示 “demo” 表示服务运行正常
### GET /demo
GET http://localhost:8080/demo