Spring Boot入门教程:60分钟快速上手
大家好,我是一个从中文系自学转码成功的后端工程师。当初我连“类”和“对象”都分不清,看到 public static void main 就头大。但靠着死磕文档、不断试错,最终不仅找到了一份不错的 Java 后端工作,还成了团队里的技术讲师。
今天写这篇《Spring Boot 入门教程》,就是想用最通俗的语言,带你 在 60 分钟内亲手跑起一个 Web 项目。你不需要任何编程基础,只要会打字、能装软件,就能跟着做!
为什么选 Spring Boot?
因为它像“Java 的脚手架”——帮你自动配置好一堆复杂的东西,让你专注写业务逻辑。就像你不用自己砌墙就能直接装修房子。
一、环境准备:装好“工具箱”
在开始前,我们需要安装三个东西:
| 工具 | 作用 | 安装建议 |
|---|---|---|
| JDK 17 | Java 运行环境(必须) | 去 Oracle 或 Adoptium 下载 LTS 版本 |
| IDEA Community | 写代码的编辑器(推荐) | 免费!比 Eclipse 更友好,新手首选 |
| Maven | 项目依赖管理工具 | IDEA 内置,无需单独安装 |
检查是否安装成功
打开终端(Windows 用 CMD 或 PowerShell,Mac 用 Terminal),输入:
java -version
如果看到类似 openjdk version "17.0.9" 的输出,说明 JDK 装好了。
💡 我当初学的时候:卡在 JDK 环境变量上整整一天!后来发现:用 IDEA 自带的 JDK 选项最省事——新建项目时直接选“Download JDK”,它会自动配好。
二、核心概念:Spring Boot 到底是什么?
别被名字吓到!我们可以把它拆开理解:
- Spring:一个 Java 框架,用来“管理对象”和“组织代码”
- Boot:意思是“启动器”,它把 Spring 配置自动化了
三个关键概念(用生活比喻)
Controller(控制器)
→ 相当于餐厅的“服务员”:你点菜(发请求),它去厨房(调用逻辑),再把菜端给你(返回结果)Application(主程序)
→ 就是那个带main方法的类,Spring Boot 项目的“启动按钮”依赖(Dependencies)
→ 别人写好的功能包,比如“发邮件”、“连数据库”。你不用重造轮子,直接“拿来用”
🌟 开发心得:Spring Boot 最大的好处是 “约定优于配置”。比如你放一个
application.properties文件,它就知道这是配置文件;你写个带@RestController的类,它就知道这是接口。
三、实战项目:做一个“问候服务”
我们要做一个超简单的 Web 接口:访问 /hello?name=张三,返回 "你好,张三!"
第 1 步:创建项目
- 打开 IDEA →
New Project - 选择 Spring Initializr
- 填写:
- Project SDK: 选你装的 JDK 17
- Language: Java
- Type: Maven
- 在 Dependencies 里勾选:
Spring Web(这是做 Web 接口的核心)
- 点击 Next → Finish
⏱️ 耗时约 2 分钟
第 2 步:认识项目结构
生成的项目长这样(只看关键部分):
demo/
├── src/
│ └── main/
│ ├── java/com/example/demo/
│ │ └── DemoApplication.java ← 主启动类
│ └── resources/
│ └── application.properties ← 配置文件
└── pom.xml ← 依赖清单(Maven 用)
第 3 步:写第一个接口
在 com.example.demo 包下新建一个 Java 文件:HelloController.java
package com.example.demo;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class HelloController {
@GetMapping("/hello")
public String sayHello(@RequestParam String name) {
return "你好," + name + "!";
}
}
代码解释(逐行拆解):
@RestController:告诉 Spring:“这个类是用来处理 Web 请求的”@GetMapping("/hello"):当用户访问/hello时,执行下面的方法@RequestParam String name:从 URL 参数中取出name的值(比如?name=李四)
第 4 步:启动项目
找到 DemoApplication.java,右键 → Run 'DemoApplication.main()'
你会看到控制台输出:
Tomcat started on port(s): 8080 (http)
...
Started DemoApplication in 2.3 seconds
✅ 成功了!你的 Web 服务已经在 http://localhost:8080 运行了。
第 5 步:测试接口
打开浏览器,输入:
http://localhost:8080/hello?name=小明
页面会显示:
你好,小明!
🎉 恭喜!你刚刚完成了人生第一个 Spring Boot 接口!
💡 新手常见问题:
Q:为什么端口是 8080?能改吗?
A:可以!在application.properties里加一行:server.port=9090重启后,服务就跑在 9090 端口了。
四、对比一下:如果用 Go 写同样的功能?
我知道有些同学也听说过 Go 语言(Golang),它也以“简单快速”著称。那我们快速对比一下:
| 项目 | Spring Boot (Java) | Go |
|---|---|---|
| 代码量 | 稍多(需注解) | 极简 |
| 启动速度 | 较慢(几秒) | 极快(毫秒级) |
| 学习曲线 | 中等(需理解面向对象) | 平缓 |
| 生态系统 | 非常成熟(企业级应用首选) | 快速成长(适合微服务、CLI 工具) |
Go 版本的“问候服务”长这样(供参考):
package main
import (
"fmt"
"net/http"
)
func hello(w http.ResponseWriter, r *http.Request) {
name := r.URL.Query().Get("name")
fmt.Fprintf(w, "你好,%s!", name)
}
func main() {
http.HandleFunc("/hello", hello)
http.ListenAndServe(":8080", nil)
}
🔍 我的开发心得:
Java/Spring Boot 更适合大型、长期维护的项目(银行、电商等),而 Go 更适合高性能、轻量级服务(API 网关、日志收集)。
作为初学者,先掌握一门主流语言更重要。Java 的就业面更广,生态更稳,是我当初转码的首选。
五、常见问题解答(避坑指南)
❌ 问题 1:启动时报错 “Address already in use”
原因:8080 端口被其他程序占用了(比如另一个 Spring Boot 项目没关)。
解决:
- 关掉之前的进程
- 或修改
server.port=8081换个端口
❌ 问题 2:访问 /hello 返回 404
检查点:
- 类上有没有
@RestController? - 方法上是不是
@GetMapping(不是@PostMapping)? - 项目是否成功启动?(看控制台有没有报错)
❌ 问题 3:中文乱码
解决:在 application.properties 添加:
server.servlet.encoding.charset=UTF-8
server.servlet.encoding.enabled=true
❌ 问题 4:Maven 下载依赖很慢
解决:配置阿里云镜像(在用户目录下的 .m2/settings.xml 中添加):
<mirrors>
<mirror>
<id>aliyun</id>
<mirrorOf>central</mirrorOf>
<name>Aliyun Maven</name>
<url>https://maven.aliyun.com/repository/public</url>
</mirror>
</mirrors>
六、下一步学习建议
你已经迈出了最关键的第一步!接下来可以:
✅ 短期目标(1 周内)
- 学会接收 JSON 数据(用
@RequestBody) - 连接数据库(H2 内存数据库最简单)
- 写单元测试(Spring Boot Test)
✅ 中期目标(1 个月内)
- 理解 Spring 的依赖注入(DI)
- 学习 MyBatis 或 JPA 操作数据库
- 部署到云服务器(如阿里云 ECS)
📚 推荐资源
- 官方文档:https://spring.io/projects/spring-boot
- 视频教程:B站搜索“Spring Boot 雷神”
- 实战书:《Spring Boot 编程思想》(虽然厚,但讲得透)
💬 最后说一句:
我当初学 Spring Boot 时,光是搞懂@Autowired就花了三天。但只要你坚持每天写点代码,一个月后回头看,你会惊讶于自己的进步。
技术没有捷径,但有方法——动手做,比看十遍都管用。
现在,合上教程,打开你的 IDEA,亲手敲一遍代码吧!
60 分钟后,你就是一名 Spring Boot 开发者了 👨💻

评论 0