Spring Boot 入门:60分钟从零写出你的第一个 Java 后端服务
大家好,我是一名开源项目维护者,也带过不少刚入行的 Java 新人。很多同学在面试时被问到“你用过 Spring Boot 吗?”却只能支支吾吾,不是因为不会,而是没机会动手。今天我就写这篇教程——不讲理论堆砌,直接带你写代码。哪怕你从来没碰过 Java Web,只要会装软件、能打字,60 分钟后你就能跑起一个真正的后端服务!
为什么是 Spring Boot?
简单说:Spring Boot 让 Java 写 Web 服务变得超级简单。以前用传统 Spring 框架,光配置文件就能写到崩溃;现在 Spring Boot 自动帮你配好一切,你只需专注业务逻辑。
我当初学的时候,光是配个数据库连接就折腾了两天。现在?一行注解搞定。
而且,几乎所有 Java 后端岗位都要求会 Spring Boot——它几乎是国内 Java 开发的事实标准。掌握它,面试题里至少能拿下 30% 的基础分。
第一步:搭建开发环境(5 分钟)
你需要准备以下三样东西:
| 工具 | 版本建议 | 作用 |
|---|---|---|
| JDK | 17 或 21(推荐) | Java 运行环境 |
| IDE | IntelliJ IDEA(社区版免费)或 VS Code + Java 插件 | 写代码的编辑器 |
| Maven | 3.8+(IDEA 通常自带) | 项目依赖管理工具 |
💡 新手提示:别纠结版本!JDK 17 是目前最稳定的 LTS(长期支持)版本,企业广泛使用。
安装步骤简述:
第二步:创建你的第一个 Spring Boot 项目(10 分钟)
打开 IDEA,点击 New Project → 选择 Spring Initializr。
填写信息如下:
- Project SDK: 选你刚装的 JDK 17
- Language: Java
- Type: Maven
- Group:
com.example - Artifact:
demo - Dependencies: 勾选 Spring Web
点击下一步,等待项目生成。
📌 关键点:Dependencies 里只选 “Spring Web”,其他先别加!越简单越不容易出错。
项目结构长这样:
demo/
├── src/
│ └── main/
│ ├── java/com/example/demo/
│ │ └── DemoApplication.java ← 主启动类
│ └── resources/
│ └── application.properties ← 配置文件
└── pom.xml ← 依赖管理文件
第三步:理解三个核心概念(通俗版)
1. @SpringBootApplication 是什么?
这是整个应用的“总开关”。你看到 DemoApplication.java 里有这行注解,它告诉 Spring:“从这里开始,自动配置一切”。
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
2. Controller:处理用户请求
你想让别人访问 http://localhost:8080/hello 看到“Hello, Spring Boot!”,就得写一个 Controller。
新建一个文件 HelloController.java:
package com.example.demo;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class HelloController {
@GetMapping("/hello")
public String sayHello() {
return "Hello, Spring Boot!";
}
}
@RestController:表示这个类专门返回数据(不是网页)@GetMapping("/hello"):当用户用 GET 方法访问/hello时,执行下面的方法
3. 自动配置:为什么不用写 web.xml?
传统 Java Web 需要配置 Tomcat、servlet、过滤器……Spring Boot 内嵌了 Tomcat,启动即运行,你完全不用管底层。
第四步:运行并测试(5 分钟)
点击 IDEA 左侧绿色三角形 ▶️ 运行 DemoApplication。
看到控制台输出:
Tomcat started on port(s): 8080 (http)
...
Started DemoApplication in 2.1 seconds
说明服务已启动!
打开浏览器,访问:
👉 http://localhost:8080/hello
你会看到页面显示:Hello, Spring Boot!
恭喜!你已经写出了人生第一个 Spring Boot 接口。
第五步:加点实用功能(20 分钟实战)
现在我们做一个更真实的例子:返回 JSON 数据的用户接口。
场景:查询用户信息
- 先建一个
User类(代表数据模型):
package com.example.demo;
public class User {
private Long id;
private String name;
private String email;
// 必须有无参构造函数(Jackson 序列化需要)
public User() {}
public User(Long id, String name, String email) {
this.id = id;
this.name = name;
this.email = email;
}
// Getter 和 Setter(IDEA 可右键 Generate 自动生成)
public Long getId() { return id; }
public void setId(Long id) { this.id = id; }
public String getName() { return name; }
public void setName(String name) { this.name = name; }
public String getEmail() { return email; }
public void setEmail(String email) { this.email = email; }
}
- 修改 Controller,返回 User 对象:
@GetMapping("/user")
public User getUser() {
return new User(1L, "张三", "zhangsan@example.com");
}
- 重启应用,访问 http://localhost:8080/user
你会看到:
{
"id": 1,
"name": "张三",
"email": "zhangsan@example.com"
}
✅ Spring Boot 自动把 Java 对象转成了 JSON!
新手常见问题 & 面试题链接
❓ 为什么我的项目启动报错?
- 检查 JDK 是否安装正确(
java -version) - 确保端口 8080 没被占用(可改端口:在
application.properties加server.port=9090) - 依赖是否下载完整?看 IDEA 底部有没有红色错误提示
❓ 面试常问:Spring Boot 和 Spring 有什么区别?
| 对比项 | Spring | Spring Boot |
|---|---|---|
| 配置方式 | XML / Java Config 手动配 | 自动配置(AutoConfiguration) |
| 内嵌服务器 | 无,需部署到 Tomcat | 内置 Tomcat/Jetty |
| 启动速度 | 慢 | 快 |
| 适用场景 | 大型定制化系统 | 快速开发微服务 |
✅ 记住一句话:Spring Boot 是 Spring 的“脚手架”,让你专注业务,而不是基建。
❓ 为什么方法上加 @GetMapping 就能响应请求?
这就是 注解驱动开发。Spring 在启动时扫描所有带 @RestController 的类,发现 @GetMapping 就自动注册路由。你不需要写 if-else 判断 URL!
学习建议:下一步怎么走?
动手扩展这个项目
- 加一个 POST 接口,接收用户注册信息(用
@PostMapping) - 试试用
@RequestParam接收 URL 参数,比如/user?id=1
- 加一个 POST 接口,接收用户注册信息(用
理解核心注解
背下这 5 个注解,面试够用:@SpringBootApplication@RestController@GetMapping/@PostMapping@Autowired(后面学依赖注入时用)@Service/@Component
不要一上来就学数据库
很多人卡在 MyBatis 配置上。建议先熟练 HTTP 接口、JSON 返回、参数接收,再引入 MySQL。善用官方文档
Spring Boot 官网文档清晰又简洁:https://spring.io/projects/spring-boot
最后的话
我写这篇教程,是因为太多初学者被“框架”两个字吓住。其实 Spring Boot 的设计哲学就是:约定优于配置。你按它的套路走,它就帮你省掉 90% 的麻烦。
60 分钟过去,你已经不再是“零基础”了。接下来,去尝试修改代码、制造错误、再修复它——这才是最快的成长路径。
记住:每一个高级工程师,都曾为一个 404 错误抓耳挠腮。你现在的每一步,都在靠近那个更好的自己。
加油!有问题欢迎在开源社区提问(比如 GitHub Discussions),我们一起解决。

评论 0