Spring Boot

Spring Boot

以最少配置创建生产级 Spring 应用,用 Maven 或 Gradle 构建

核心功能

Spring Boot 通过 starter 依赖和自动配置,把原本繁琐的 Spring 配置压缩成几行构建脚本,并能打成内嵌 Tomcat 的可执行 jar。适合 Java 技术栈的企业级服务与微服务。

功能亮点

start.spring.io 生成骨架

在依赖对话框里勾选 web,点 Generate 下载 zip 解压即得一个可运行的项目

几行注解暴露接口

类上加 @RestController、方法上加 @GetMapping("/hello"),就完成一个 Web 端点

内嵌容器直接监听

启动后内嵌 Tomcat 在 localhost:8080 接收请求,不用装外部 Servlet 容器

父 POM 统一版本

继承 spring-boot-starter-parent 后各 starter 无需再写版本号,依赖版本由它对齐

打成可执行 jar

mvn package 或 gradle bootJar 产出单个 jar,java -jar 即可运行,便于容器化

适用场景

• 企业级 Java 后端服务,需要成套的依赖管理与生产级默认配置
• 微服务架构中的独立服务,打成可执行 jar 后直接容器化部署
• 在已有 Spring 技术栈上新建项目,用 starter 快速接入 Web、数据等能力

安装配置

bash
前置条件:Java SDK 17 或更高版本,可用 java -version 检查。
构建工具要求:Apache Maven 3.6.3+,或 Gradle 8.x(8.14 及以上)/ 9.x。

方式一:用 start.spring.io 生成项目
访问 start.spring.io,在 Dependencies 中搜索并添加 web 依赖,点击 Generate 下载 zip 并解压。

方式二:在 Maven pom.xml 中声明
<parent>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-parent</artifactId>
	<version>4.1.0</version>
</parent>
<dependencies>
	<dependency>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-webmvc</artifactId>
	</dependency>
</dependencies>

方式三:在 Gradle build.gradle 中声明
plugins {
	id 'java'
	id 'org.springframework.boot' version '4.1.0'
	id 'io.spring.dependency-management' version '1.1.7'
}
dependencies {
	implementation 'org.springframework.boot:spring-boot-starter-webmvc'
}

(可选)安装 Spring Boot CLI:
sdk install springboot          # SDKMAN!
brew tap spring-io/tap && brew install spring-boot   # macOS Homebrew
sudo port install spring-boot-cli                    # MacPorts
scoop bucket add extras && scoop install springboot  # Windows Scoop

使用方法

java
写一个最小的 Web 应用:
package com.example;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@SpringBootApplication
public class MyApplication {

	@RequestMapping("/")
	String home() {
		return "Hello World!";
	}

	public static void main(String[] args) {
		SpringApplication.run(MyApplication.class, args);
	}

}

运行应用:
mvn spring-boot:run          # Maven
gradle bootRun               # Gradle
./gradlew bootRun            # 使用 Gradle Wrapper(Windows 为 .\gradlew.bat bootRun)

打包成可执行 jar:
mvn package
java -jar target/myproject-0.0.1-SNAPSHOT.jar

gradle bootJar
java -jar build/libs/myproject-0.0.1-SNAPSHOT.jar

关键指标

尚未核验对标产品,此处只列本工具自身指标,不做对比结论。

指标Spring Boot
价格免费
开源
上手难度进阶

相关工具

同类工具

优点

  • starter + 自动配置把 Spring 的繁琐配置压到几行构建脚本,新项目几乎无需 XML 配置
  • 继承 spring-boot-starter-parent 或使用 Gradle 插件后,各依赖版本由官方统一对齐
  • 内嵌 Apache Tomcat 直接监听 8080,本地开发不需要单独安装和配置 Servlet 容器
  • mvn package / gradle bootJar 产出单文件可执行 jar,java -jar 即可运行,部署链路短

缺点

  • 对环境有明确版本下限:需要 Java 17+,Maven 3.6.3+ 或 Gradle 8.14+/9.x,老项目要先升级工具链
  • 自动配置隐藏了大量默认行为,排查问题时需要理解 starter 与自动装配机制才能定位到具体配置
  • 运行前要先经过构建工具打包或用插件启动,比脚本语言直接跑源码多一个环节