60分钟从零写出你的第一个Spring Boot应用
大家好,我是一个写了五年后端、维护过十几个开源项目的工程师。今天这篇教程,源于我经常被刚入门的朋友问:“能不能带我快速跑通一个Spring Boot项目?”
说实话,我当初学的时候也踩过不少坑——环境配不对、依赖搞混乱、启动就报错……所以这次,我想用最直白的语言、最少的术语、最多的实操,带你 在60分钟内真正跑起来一个能访问的Web服务。不需要你懂Java框架,只要会装软件、会复制代码就行!
Spring Boot到底是啥?能干啥?
简单说:Spring Boot 是一个帮你快速搭建 Java Web 应用的“脚手架”。
- 它不是一门新语言,而是基于 Java 的开发工具。
- 它自动配置了很多东西(比如数据库连接、Web服务器),你不用手动写一堆繁琐代码。
- 适合做网站后端、API接口、微服务等。
💡 类比理解:如果你要盖房子,Spring Boot 就像预制好的钢结构框架——你不用从挖地基开始,直接往上砌墙、装门窗就行。
环境准备:三步搞定开发环境
第一步:安装 JDK(Java 开发工具包)
Spring Boot 基于 Java,所以必须先装 JDK 17 或更高版本(推荐 JDK 17,稳定且主流)。
- 下载地址:https://adoptium.net/(选 Temurin 17)
- 安装后,在终端输入:
如果看到类似java -versionopenjdk version "17.0.x",说明成功了。
⚠️ 新手常见问题:不要装 JRE!要装 JDK(Development Kit),否则没法编译代码。
第二步:安装 IDE(代码编辑器)
推荐使用 IntelliJ IDEA Community(免费版):
- 下载地址:https://www.jetbrains.com/idea/download/
- 安装时全部默认选项即可。
✅ 小技巧:IDEA 对 Spring Boot 支持极好,会自动提示依赖、生成代码,新手友好度拉满。
第三步:确认网络畅通
Spring Boot 项目依赖很多第三方库,需要联网下载。如果你在国内,建议配置阿里云 Maven 镜像(后面会教你怎么改)。
核心概念:三个关键词讲明白
别被“框架”吓到,其实就三件事:
1. Controller(控制器)
处理用户请求的地方。比如你访问 /hello,就由 Controller 返回“你好!”。
2. Application(主程序)
整个项目的入口,带 @SpringBootApplication 注解的那个类。
3. Embedded Server(内嵌服务器)
Spring Boot 自带 Tomcat(Web服务器),不用单独安装!这就是“开箱即用”的关键。
🌟 技术分享时间:很多人不知道,Spring Boot 默认把 Tomcat 打包进 jar 文件里了,所以你运行一个 jar 就能启动完整 Web 服务——这叫 Embedded(内嵌)模式。
实战:60分钟动手做一个“问候服务”
现在,我们一步步做一个能返回“Hello, [名字]!”的接口。
步骤 1:创建项目(用官方脚手架)
打开浏览器,访问 https://start.spring.io
填写如下信息:
| 选项 | 值 |
|---|---|
| Project | Maven |
| Language | Java |
| Spring Boot | 3.2.x(最新稳定版) |
| Group | com.example |
| Artifact | demo |
| Packaging | Jar |
| Java Version | 17 |
在 Dependencies 搜索框中输入 Spring Web,点击添加。
最后点 Generate,下载 zip 包,解压到任意文件夹。
🔍 为什么选 Maven?因为它是 Java 最主流的构建工具,比 Gradle 更适合新手理解依赖关系。
步骤 2:导入项目到 IDEA
- 打开 IDEA
- 选择
File > Open - 找到你刚解压的
demo文件夹,打开 - 等待 IDEA 自动下载依赖(第一次可能要1-3分钟)
💡 如果卡在 “Resolving dependencies”,说明网络慢。可手动配置 Maven 镜像(见文末附录)。
步骤 3:编写第一个接口
在 src/main/java/com/example/demo 目录下,你会看到一个 DemoApplication.java。
新建一个文件:右键该目录 → New → Java Class → 名字填 HelloController
粘贴以下代码:
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(defaultValue = "World") String name) {
return "Hello, " + name + "!";
}
}
📖 代码解释:
@RestController:告诉 Spring 这是个 Web 控制器@GetMapping("/hello"):当用户访问/hello时执行这个方法@RequestParam:从 URL 参数中取name,比如/hello?name=Alice
步骤 4:启动项目
回到 DemoApplication.java,你会看到左边有个绿色小三角 ▶️,点击它!
控制台会输出类似:
Tomcat started on port(s): 8080 (http)
Started DemoApplication in 2.345 seconds
✅ 成功了!现在打开浏览器,访问:
http://localhost:8080/hello
你会看到:Hello, World!
再试试:
http://localhost:8080/hello?name=Kimi
输出:Hello, Kimi!
🎉 恭喜!你刚刚完成了人生第一个 Spring Boot 接口。注意,这里提到的 Kimi 并不是月之暗面那个 AI,只是我们随便起的测试名字——不过如果你真想用 Spring Boot 调用 Kimi API,后面也可以做到!
常见问题 & 避坑指南
❌ 问题1:启动报错 “Address already in use”
说明 8080 端口被占用了。解决办法:
在 src/main/resources/application.properties 文件中加一行:
server.port=8081
然后重启,访问 http://localhost:8081/hello
❌ 问题2:IDEA 提示 “Cannot resolve symbol ‘SpringBootApplication’”
这是依赖没下载完。尝试:
- 右键项目 → Maven → Reload Projects
- 或者删除
.m2/repository缓存目录(路径在用户目录下),重新导入
❌ 问题3:中文乱码
在 application.properties 加:
server.servlet.encoding.charset=UTF-8
server.servlet.encoding.enabled=true
❌ 问题4:想改项目名或包名?
建议:初学阶段别改!等你熟悉结构后再重构。乱改包名容易导致 Spring 扫描不到组件。
下一步怎么学?我的学习路径建议
你现在已经跨过了最难的第一步。接下来,我建议按这个顺序深入:
阶段1:巩固基础(1-2周)
- 学会接收 JSON 数据(用
@RequestBody) - 连接数据库(H2 内存数据库最简单)
- 写单元测试(Spring Boot Test 很强大)
阶段2:做个小项目(比如博客系统)
- 用户注册登录(用 Spring Security)
- 文章增删改查(CRUD)
- 分页查询
阶段3:进阶工具链
- 日志管理(Logback)
- 接口文档(Swagger)
- 部署上线(Docker + 云服务器)
📚 关于书籍推荐:
我当初看的是《Spring Boot实战》(Craig Walls 著),但对纯新手可能有点难。更友好的是《Spring Boot编程思想》(作者:小马哥),或者直接看官方文档 https://spring.io/guides。
关于 Embedding 和 AI 的一点延伸
你可能会好奇:标题里的 Embedding 是什么?其实在 NLP(自然语言处理)中,Embedding 是把文字转成向量的技术。比如把“苹果”变成 [0.23, -1.45, 0.89, ...]。
虽然 Spring Boot 本身不处理 Embedding,但你可以用它搭建 AI 服务的后端!例如:
- 前端传一句话给 Spring Boot
- Spring Boot 调用 Kimi 或其他大模型 API
- 模型返回结果,Spring Boot 再转发给前端
这样,你的 Spring Boot 应用就成了 AI 能力的“桥梁”。
💡 技术分享:我维护的一个开源项目就是用 Spring Boot 封装了多个 Embedding 模型的 API,让前端能统一调用。你会发现,后端的核心价值是“集成”与“调度”,而不是算法本身。
附录:国内加速 Maven 依赖(重要!)
如果你下载依赖特别慢,在 IDEA 中操作:
- 打开
File > Settings > Build > Build Tools > Maven - 在
User settings file后点击右边文件夹图标,打开settings.xml - 在
<mirrors>标签内加入:
<mirror>
<id>aliyunmaven</id>
<mirrorOf>*</mirrorOf>
<name>阿里云公共仓库</name>
<url>https://maven.aliyun.com/repository/public</url>
</mirror>
保存后,重新 Reload 项目,速度飞起!
最后的话
60分钟很短,但足够让你亲手触摸到后端开发的真实手感。我见过太多人卡在环境配置就放弃了,而你已经跑通了第一个接口——这比90%的观望者都强。
记住:所有复杂的系统,都始于一个能跑起来的 hello world。
下次当你看到淘宝、京东的后端服务,不妨想想:它们最初,也不过是一个小小的 /hello。
加油!有问题欢迎留言讨论。技术分享的意义,就是让后来者少走弯路。
—— 一个希望你少踩坑的开源维护者

评论 0