Spring Boot入门教程:60分钟快速上手
开篇:Spring Boot是什么,能用来做什么?

你有没有想过,开发一个功能完整的网站或者后台服务,可能只需要几十行代码就能完成?这听起来不可思议,但这就是 Spring Boot 带给开发者的优势。
简单来说,Spring Boot 是一个基于 Java 的框架,它帮助我们快速构建、部署和运行后端应用程序。你可以把它理解为一个“自动装配工具包”,原本需要写很多配置代码才能启动的项目,现在它都能帮你自动搞定。
想象一下,你要开一家咖啡店:
- 没有Spring Boot时:你得自己买咖啡机、磨豆机、热水壶……还得自己组装。
- 有了Spring Boot:别人已经为你准备好了所有设备,并且帮你调好参数,你只要放咖啡豆,就能一键出咖啡!
所以,Spring Boot非常适合想快速搭建Java Web项目的新手,也广泛应用于企业级项目开发。
环境准备:开始编码前你需要准备什么?

在正式编写Spring Boot程序之前,我们需要先准备好开发环境。不用担心,下面的操作虽然看起来多,其实都很简单,一步步来就行。
所需工具清单:
| 工具 | 作用 |
|---|---|
| JDK(Java Development Kit) | 编写和运行Java程序的基础 |
| IntelliJ IDEA 或 Eclipse | 编写代码的集成开发环境(IDE) |
| Maven | 管理项目依赖和构建项目 |
| Spring Initializr 网站 | 快速生成Spring Boot项目模板 |
第一步:安装JDK
- 访问官网:https://www.oracle.com/java/technologies/javase-downloads.html
- 下载适合你系统的 JDK 8 或 JDK 11
- 安装完成后,在终端或命令行中输入以下命令查看版本:
java -version
如果输出类似如下内容,说明安装成功:
openjdk version "11.0.15" 2022-07-19
⚠️ 注意:有些系统可能默认使用JRE,不是JDK。请确认是JDK。
第二步:安装IDE(推荐用IntelliJ IDEA)
- 访问 https://www.jetbrains.com/idea/download/
- 下载社区版(免费)
- 安装并打开
第三步:学会使用Maven(自动下载依赖)
Maven可以理解为一个“智能仓库管理员”,它会根据你的需求自动下载Java项目需要的各种“材料”(依赖库)。不用手动一个个去网上找。
查看是否已安装Maven:
mvn -v
如果你看到类似下图信息,说明已经安装好了:
Apache Maven 3.8.4 (...)
如果没有安装,请访问官方下载页面:https://maven.apache.org/download.cgi
第四步:创建第一个Spring Boot项目模板
推荐使用 https://start.spring.io 这个网站自动生成Spring Boot项目模板,非常方便。
操作步骤如下:
- 访问网站
- 填写以下信息:
| 配置项 | 示例值 |
|---|---|
| Project | Maven |
| Language | Java |
| Spring Boot Version | 推荐选 2.7.x(稳定)或 3.x(新) |
| Group | com.example |
| Artifact | demo |
| Name | DemoApplication |
| Packaging | Jar |
| Java Version | 11 或 17 |
添加依赖(点击 “Add Dependencies”):
- Spring Web(用于构建Web应用)
- Thymeleaf(可选,网页模板引擎)
- Spring Data JPA(可选,用于数据库操作)
最后点击“Generate”按钮,下载zip压缩包,解压到本地文件夹
第五步:导入项目到IDE中
以 IntelliJ IDEA为例:
- 启动IDEA
- 点击 “Open” -> 选择你刚刚解压的文件夹
- 选择pom.xml作为导入项目入口
- 等待Maven自动下载所需的库
一切顺利的话,你会看到如下结构:
src
├── main
│ ├── java
│ │ └── com.example.demo
│ │ ├── DemoApplication.java
│ │ └── controller
│ ├── resources
│ ├── application.properties
│ └── static
└── test
核心概念:什么是Spring Boot里的关键组件?

在开始写代码前,我们来看看几个核心概念,它们是你理解Spring Boot的关键。
1. Controller(控制器)
你可以把Controller理解为“快递员”,它的职责是从浏览器接收请求,然后转交给服务器处理,最后再将结果返回给浏览器。
示例代码:
@RestController
public class HelloController {
@GetMapping("/hello")
public String sayHello() {
return "你好,这是你的第一个Spring Boot接口!";
}
}
当你访问地址 http://localhost:8080/hello,就会看到这个消息。
2. Service层(业务逻辑层)
Service 是处理具体逻辑的地方,比如登录验证、查询数据库等。它就像咖啡店里真正负责泡咖啡的人。
示例代码:
@Service
public class GreetingService {
public String greet(String name) {
return "欢迎光临," + name;
}
}
然后在Controller中调用它:
@RestController
public class HelloController {
private final GreetingService greetingService;
public HelloController(GreetingService greetingService) {
this.greetingService = greetingService;
}
@GetMapping("/greet/{name}")
public String greetUser(@PathVariable String name) {
return greetingService.greet(name);
}
}
访问 http://localhost:8080/greet/小明,你会看到:
欢迎光临,小明
3. @RestController 和 @GetMapping 的含义
这些都是Spring Boot的注解,是用来告诉程序“该做些什么”的标签。
@RestController:表示这个类中的方法返回的是数据(JSON),而不是HTML网页。@GetMapping("/路径"):指定哪个方法对应哪个URL路径。
4. 自动装配原理(Auto Configuration)
这是Spring Boot最神奇的地方之一:它能够自动帮你配置各种功能模块(如数据库连接、Web服务器等),不需要手动编写大量XML配置文件。
例如,当你添加了 Spring Web 依赖,Spring Boot就会自动帮你启动一个内嵌的Tomcat服务器。
5. application.properties 配置文件
这个文件就像是项目的说明书,我们可以在这里修改一些配置项,比如:
server.port=8081
spring.application.name=my-first-app
上面这段配置表示将服务器运行在端口8081,而不是默认的8080。
实战项目:60分钟写出第一个Spring Boot网站

接下来我们将用60分钟时间完成一个简单的个人博客系统,实现以下几个功能:
✅ 显示首页欢迎语
✅ 提供一个文章列表页
✅ 支持访问单篇文章详情
✅ 使用静态资源展示图片
第1步:创建Controller显示主页
新建一个控制器类,放在 controller 文件夹下:
@RestController
public class HomeController {
@GetMapping("/")
public String homePage() {
return "<h1>欢迎来到我的博客</h1>";
}
}
运行程序后,访问 http://localhost:8080 ,你会看到:
欢迎来到我的博客
第2步:展示文章列表页
我们模拟几个文章对象:
public class Article {
private int id;
private String title;
private String author;
// getter/setter 构造器略
}
再创建一个文章控制器:
@RestController
@RequestMapping("/articles")
public class ArticleController {
private List<Article> articles = Arrays.asList(
new Article(1, "为什么学习编程很重要", "李老师"),
new Article(2, "Spring Boot到底有多强大", "王工程师")
);
@GetMapping
public List<Article> getArticles() {
return articles;
}
@GetMapping("/{id}")
public Article getArticleById(@PathVariable int id) {
return articles.stream()
.filter(a -> a.getId() == id)
.findFirst()
.orElseThrow(() -> new RuntimeException("未找到文章"));
}
}
访问 /articles 可以看到两个文章信息:
[
{ "id": 1, "title": "为什么学习编程很重要", "author": "李老师" },
{ "id": 2, "title": "Spring Boot到底有多强大", "author": "王工程师" }
]
第3步:引入静态资源(CSS / 图片)
有时候我们想加点样式或者显示一张图片。Spring Boot允许我们将这些资源放在 resources/static 文件夹下。
例如:
- 创建目录
resources/static/images - 放入一张图片
logo.png - 在浏览器访问:
http://localhost:8080/images/logo.png即可查看
还可以通过HTML文件直接引用这些资源,但需要注意我们现在只是返回字符串,不能写HTML。稍后再介绍如何支持网页渲染。
第4步:添加日志输出
为了更清晰地知道程序发生了什么事,我们可以在Controller中加入日志输出。
引入日志:
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@RestController
public class LoggingController {
private Logger logger = LoggerFactory.getLogger(this.getClass());
@GetMapping("/log")
public String logMessage() {
logger.info("用户访问了日志接口");
return "已记录日志";
}
}
运行程序访问 /log,你会在控制台看到如下信息:
INFO ... LoggingController - 用户访问了日志接口
第5步:打包成可运行的Jar文件
完成了基本的功能之后,我们就可以将项目打包成一个独立的jar文件:
mvn package
进入 target/ 目录,执行:
java -jar demo-0.0.1-SNAPSHOT.jar
这样就不再需要IDE也能运行你的Spring Boot项目啦!
常见问题解答(FAQ)
Q1:启动时报错“No running Tomcat server”怎么办?
A:Spring Boot自带Tomcat,只要你添加了Spring Web依赖就不会有问题。检查是否遗漏依赖,或修改过端口号导致冲突。
Q2:@RestController和@Controller有什么区别?
A:@RestController = @Controller + @ResponseBody。前者直接返回数据,后者一般用于返回视图(HTML页面)。
Q3:我怎么知道某个依赖有没有被正确加载?
A:可以通过观察Maven是否报红,也可以查看 mvn dependency:tree 查看所有依赖树。
Q4:为什么访问不到自己的接口?
A:常见原因包括:
- URL路径拼写错误
- 控制器没有被Spring扫描到(记得加上注解)
- 端口号不是8080(查看application.properties)
学习建议:下一步学什么?

恭喜你完成了第一段Spring Boot之旅!接下来的学习方向如下:
推荐学习路线:
- 学习Spring Boot整合数据库(JPA + MySQL/H2)
- 学习Spring Boot安全机制(Spring Security)
- 掌握RESTful API设计规范
- 了解Thymeleaf模板引擎(如果你想写HTML页面)
- 接触Spring Boot与前后端分离开发(配合Vue.js / React)
推荐学习资料:
| 资源类型 | 名称 | 描述 |
|---|---|---|
| 官方文档 | https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/ | 权威文档 |
| 免费课程 | Bilibili《Spring Boot实战》 | 视频讲解 |
| 书籍 | 《Spring Boot实战派》 | 初学者友好 |
| 练手项目 | GitHub搜索关键词 springboot example |
看别人是怎么写的 |

结束语
你现在已经掌握了Spring Boot的核心知识,甚至已经具备了一个基础后端开发者的技能。继续学习,你会发现越来越多有趣的玩法——比如用Spring Boot做小程序接口、管理系统、爬虫、邮件通知等等……
记住一句话:编程就是不断练习+解决问题的过程。
希望这篇《Spring Boot入门教程:60分钟快速上手》能成为你踏上Java后端之路的第一块跳板。🚀
🎉 恭喜你完成本章学习!继续前进吧,未来的架构师!

评论 0