Spring Boot 60分钟极速入门:零基础也能写出第一个后端接口
大家好,我是公司技术团队的培训负责人,过去五年带过上百名应届生从零开始走上后端开发之路。每到招聘季,我都会收到大量简历,其中不少同学写着“熟悉Spring Boot”,但一问基础概念就露怯。其实,Spring Boot 并不难,关键在于用对方法、抓住核心。
今天这篇教程,就是我结合多年带新人的经验,专为完全零基础的同学打造的——60分钟快速上手 Spring Boot。无论你是计算机专业学生,还是转行自学者,只要会写“Hello World”,就能跟下来。更重要的是,我会穿插求职建议和开发心得,帮你避开我当年踩过的坑。
我当初学的时候,光是配环境就折腾了三天,最后发现只是 JDK 版本不对。别担心,这篇教程已经替你踩过雷了。
为什么选择 Spring Boot?
简单说:Spring Boot 是 Java 后端开发的事实标准。
- 它基于强大的 Spring 框架,但简化了配置
- 内置 Tomcat,无需部署 WAR 包
- 自动配置(Auto-Configuration)让你专注业务逻辑
- 社区活跃,企业广泛使用 —— 这意味着:会 Spring Boot = 拿到求职敲门砖
补充一句:虽然标题提到 Go,但本文聚焦 Spring Boot。不过我常被问:“该学 Java 还是 Go?”我的建议是:求职优先选 Java(尤其大厂),兴趣探索可试试 Go。两者都是优秀语言,但生态和岗位数量目前 Java 仍占优。
第一步:环境准备(10分钟搞定)
必装软件清单
| 工具 | 推荐版本 | 用途 |
|---|---|---|
| JDK | 17(LTS) | Java 运行环境 |
| IDE | IntelliJ IDEA Community | 开发工具(免费) |
| 构建工具 | Maven(IDEA 内置) | 项目依赖管理 |
避坑指南:不要用 JDK 8!虽然老项目多,但新项目普遍用 11 或 17。JDK 21 虽新,但部分库兼容性待验证,JDK 17 是当前最稳选择。
验证安装
打开终端,执行:
java -version
应看到类似输出:
openjdk version "17.0.12" 2024-07-16
如果报错,请先正确安装 JDK 并配置 JAVA_HOME 环境变量。
第二步:创建你的第一个 Spring Boot 项目
方法:使用 Spring Initializr(官方推荐)
打开浏览器,访问 https://start.spring.io
填写如下信息:
- Project: Maven
- Language: Java
- Spring Boot: 3.3.x(最新稳定版)
- Group:
com.example - Artifact:
demo - Dependencies: 勾选 Spring Web
点击 “Generate” 下载 ZIP 包
解压后用 IDEA 打开整个文件夹
开发心得:永远用 Initializr 创建项目!手动配 pom.xml 容易出错,且 Initializr 自动生成最佳实践结构。
第三步:理解核心概念(用大白话解释)
1. 主启动类(Main Class)
在 src/main/java/com/example/demo 下找到 DemoApplication.java:
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
@SpringBootApplication:这是 Spring Boot 的“魔法注解”,它包含了:@Configuration:告诉 Spring 这是个配置类@EnableAutoConfiguration:自动配置数据库、Web 等组件@ComponentScan:自动扫描同包及子包下的组件
新手常见误区:以为要自己写一堆配置。其实 Spring Boot 的核心思想是“约定优于配置”——你只要按规矩放文件,它就自动干活。
2. Controller:处理 HTTP 请求
新建一个类 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=@Controller+@ResponseBody,表示返回 JSON 或字符串,而非页面@GetMapping("/hello"):当访问/hello路径时,调用此方法
3. 启动并测试
- 在 IDEA 中右键点击
DemoApplication.java→ Run - 控制台出现
Tomcat started on port(s): 8080即成功 - 浏览器访问
http://localhost:8080/hello
你应该看到:Hello, Spring Boot!
恭喜!你已经完成了第一个后端接口开发。
第四步:实战小项目 —— 用户信息 API
现在我们做一个稍复杂的例子:提供用户查询接口。
目标
- GET
/users/1→ 返回用户 ID 为 1 的信息 - 数据暂存于内存(不连数据库)
步骤 1:创建 User 实体类
package com.example.demo;
public class User {
private Long id;
private String name;
private String email;
// 构造函数
public User(Long id, String name, String email) {
this.id = id;
this.name = name;
this.email = email;
}
// Getter 方法(必须!否则 JSON 序列化失败)
public Long getId() { return id; }
public String getName() { return name; }
public String getEmail() { return email; }
}
步骤 2:创建 UserController
package com.example.demo;
import org.springframework.web.bind.annotation.*;
import java.util.*;
@RestController
@RequestMapping("/users")
public class UserController {
// 模拟数据库
private Map<Long, User> userDb = new HashMap<>();
public UserController() {
userDb.put(1L, new User(1L, "张三", "zhangsan@example.com"));
userDb.put(2L, new User(2L, "李四", "lisi@example.com"));
}
@GetMapping("/{id}")
public User getUserById(@PathVariable Long id) {
return userDb.get(id);
}
@GetMapping
public List<User> getAllUsers() {
return new ArrayList<>(userDb.values());
}
}
步骤 3:测试接口
- 访问
http://localhost:8080/users/1→ 返回 JSON:{"id":1,"name":"张三","email":"zhangsan@example.com"} - 访问
http://localhost:8080/users→ 返回用户列表
开发心得:这个例子虽小,但涵盖了 RESTful API 的基本结构。面试官常问:“如何设计一个用户查询接口?” 你能现场写出这段代码,就超过 80% 的应届生。
新手高频问题解答
Q1:为什么我的接口返回 404?
- 检查 Controller 类是否加了
@RestController - 检查方法是否加了
@GetMapping等映射注解 - 确保主启动类在
com.example.demo包下(或父包),否则组件扫描不到
Q2:如何修改端口号?
在 src/main/resources/application.properties 中添加:
server.port=9090
重启后服务将在 9090 端口运行。
Q3:能用 Gradle 吗?
可以,但应届生建议先用 Maven。原因:
- 国内企业 Maven 使用率 > 80%
- 面试官更熟悉 Maven 项目结构
- Gradle 脚本灵活但学习曲线陡
Q4:和 Go 的 Gin 框架比,哪个更简单?
- Go 语法更简洁,启动更快,适合微服务
- 但 Java 生态更成熟,调试工具强大,大型系统维护性好
- 求职角度:如果你目标是阿里、腾讯、银行等,Java 是必选项;如果是初创公司或云原生方向,Go 机会也在增加
下一步学习路径建议
完成本教程后,你已经具备了 Spring Boot 的“最小可行能力”。接下来按顺序学习:
- 连接数据库:集成 MyBatis 或 JPA,实现真正的 CRUD
- 统一返回格式:封装
Result<T>类,避免每个接口手写 JSON 结构 - 异常处理:用
@ControllerAdvice全局捕获异常 - 单元测试:写
@WebMvcTest测试 Controller - 部署上线:打成 JAR 包,用
java -jar启动
求职提醒:简历上不要写“了解 Spring Boot”,而要写“使用 Spring Boot 开发了 XX 功能,支持日均 1000+ 请求”。哪怕只是本地 demo,也要包装成项目经验。
最后的话
60 分钟很短,但足以让你跨过 Spring Boot 的门槛。我带过的很多学生,就是从这样一个简单的 /hello 开始,最终拿到了心仪 offer。
记住:技术学习不是比谁懂的多,而是比谁先跑通第一个完整流程。你现在能独立创建项目、写接口、启动服务——这已经是巨大进步。
如果你觉得这篇教程有帮助,不妨动手敲一遍代码。遇到问题?欢迎在评论区留言(假设这是博客)。下一步,去 GitHub 找一个开源 Spring Boot 项目,读它的 README 和 Controller,你会发现:原来高手写的代码,也不过如此。
加油,未来的后端工程师!

评论 0