Spring Boot入门教程:60分钟快速上手

Bean没注入
2025-12-19 11:28
阅读 3265

大家好,我是阿哲,一名在大厂干了3年后端开发的工程师,平时也在B站做技术UP主。经常有刚入行的朋友私信我:“Spring Boot到底是什么?能不能给我一个最简单的入门指南?”

我当初学的时候也是一头雾水——Maven、注解、自动配置……一堆术语砸过来,简直劝退。所以今天,我决定写一篇真正零基础友好的教程,带你用60分钟时间,亲手跑起你的第一个Spring Boot项目。

无论你是计算机专业新生、转行小白,还是产品经理想了解后端逻辑,这篇文章都能让你看懂、跑通、甚至改一改!毕竟,后端不是魔法,而是一步一步搭积木的过程


一、Spring Boot 是什么?它能帮你做什么?

简单说:Spring Boot 是一个帮你快速搭建后端服务的“脚手架”工具

想象你要做一个产品(比如一个待办事项App),前端负责界面,后端负责数据存储、用户登录、任务增删等逻辑。
过去,写一个后端服务要配几十个文件、装一堆依赖、调无数参数——光环境配置就能耗掉一周。

Spring Boot 的核心思想就两个字:约定 + 自动

  • 它规定了“标准做法”(比如代码放哪里、配置怎么写)
  • 它自动帮你加载需要的组件(比如Web服务器、数据库连接)

结果就是:你只需要关注业务逻辑,剩下的它来搞定

✅ 适合场景:API接口开发、微服务、企业级应用后端
❌ 不适合场景:超轻量脚本、纯前端项目


二、环境准备:5分钟搞定开发环境

别怕!我们只需要安装3样东西:

工具 作用 推荐版本 下载地址
JDK Java运行环境 JDK 17(LTS长期支持) Oracle官网OpenJDK
IDE 写代码的编辑器 IntelliJ IDEA Community(免费) 官网下载
Maven 项目依赖管理工具 3.8+(IDEA内置,通常不用单独装) -

步骤1:安装JDK

  1. 下载JDK 17(建议选 .tar.gz.exe 格式)
  2. 安装后打开终端(Mac/Linux)或命令提示符(Windows),输入:
    java -version
    
    如果看到类似 openjdk version "17.0.12" 的输出,说明成功!

💡 小贴士:如果你用的是Windows且提示“不是内部命令”,请配置环境变量 JAVA_HOME

步骤2:安装IntelliJ IDEA

  1. 下载Community版(免费!别下Ultimate)
  2. 安装时勾选“Add to PATH”(方便命令行启动)
  3. 首次启动会提示导入设置,选“Do not import”

⚠️ 避坑指南:不要用Eclipse!对新手极不友好。IDEA的智能提示能救你命。


三、核心概念:3个关键词搞懂Spring Boot

1. 什么是“后端”?

后端 = 服务器上的程序,负责:

  • 接收前端请求(比如“新增一条待办”)
  • 处理逻辑(验证用户、保存数据)
  • 返回结果(比如“{success: true}”)

你可以把它想象成餐厅的后厨——顾客(前端)点菜,后厨(后端)做菜,再把菜端出来。

2. “产品”视角看后端

作为开发者,你其实在构建产品的引擎
比如一个电商产品,后端要实现:

  • 用户注册/登录
  • 商品查询
  • 下单支付
  • 订单状态更新

Spring Boot 就是帮你高效实现这些功能的工具箱

3. Spring Boot 的三大支柱

概念 通俗解释 例子
Controller 对外接待员 负责接收“/api/todo/add”这样的请求
Service 业务处理员 负责校验数据、调用数据库
Repository 数据保管员 负责和数据库打交道(增删改查)

🎯 新手重点:先掌握 Controller,其他可以后面补。


四、实战项目:手把手写一个“Hello World”接口

我们现在要做的产品功能很简单:
当用户访问 /hello 时,返回 "Hello, Spring Boot!"

第1步:创建项目

  1. 打开 IDEA → New Project
  2. 左侧选 Spring Initializr
  3. 填写:
    • Project SDK: 选你安装的JDK 17
    • Language: Java
    • Type: Maven
  4. 点击 Next
  5. Group: com.example(公司域名倒写,随便填) Artifact: demo(项目名)
  6. 关键一步:在 Dependencies 中搜索并勾选 Spring Web
  7. 点击 Finish

✅ 成功标志:项目结构里有 src/main/javapom.xml

第2步:写代码!

展开项目,找到 src/main/java/com/example/demo,你会看到一个叫 DemoApplication.java 的文件。
不要动它! 我们新建一个Controller。

右键包名 → NewJava Class,命名为 HelloController

粘贴以下代码:

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!";
    }
}

第3步:运行项目

  1. 找到 DemoApplication.java(带绿色小箭头图标)
  2. 右键 → Run 'DemoApplication.main()'
  3. 等待控制台输出:
    Tomcat started on port(s): 8080 (http)
    Started DemoApplication in 2.345 seconds
    

第4步:测试接口

打开浏览器,访问:
👉 http://localhost:8080/hello

你会看到页面显示:

Hello, Spring Boot!

🎉 恭喜!你已经完成了第一个Spring Boot接口!


五、升级一下:做个简单的“产品”功能

光说“Hello”太单薄,我们加个实用功能:记录用户留言

目标

  • POST /message 提交留言 → 保存到内存
  • GET /messages 查看所有留言

第1步:创建Message实体类

新建 Message.java

package com.example.demo;

public class Message {
    private String content;
    
    // 必须有无参构造函数(JSON序列化需要)
    public Message() {}
    
    public Message(String content) {
        this.content = content;
    }
    
    public String getContent() {
        return content;
    }
    
    public void setContent(String content) {
        this.content = content;
    }
}

第2步:改造Controller

修改 HelloController.java

package com.example.demo;

import org.springframework.web.bind.annotation.*;
import java.util.ArrayList;
import java.util.List;

@RestController
public class HelloController {
    
    // 用List模拟数据库(实际项目用MySQL等)
    private List<Message> messages = new ArrayList<>();
    
    @GetMapping("/hello")
    public String sayHello() {
        return "Hello, Spring Boot!";
    }
    
    // 新增留言
    @PostMapping("/message")
    public String addMessage(@RequestBody Message message) {
        messages.add(message);
        return "留言已保存!共 " + messages.size() + " 条";
    }
    
    // 获取所有留言
    @GetMapping("/messages")
    public List<Message> getMessages() {
        return messages;
    }
}

第3步:测试

  1. 重启项目(点击IDEA右上角红色方块停止,再点绿色三角启动)
  2. Postmancurl 测试POST请求:
# 发送留言
curl -X POST http://localhost:8080/message \
  -H "Content-Type: application/json" \
  -d '{"content":"今天学会了Spring Boot!"}'
  1. 访问 http://localhost:8080/messages 查看结果

你会看到JSON格式的留言列表!

💡 小知识:@RequestBody 表示从请求体中读取JSON数据并自动转成Java对象。


六、新手常见问题解答(FAQ)

Q1:为什么我的项目启动报错“Port 8080 was already in use”?

原因:8080端口被占用(比如另一个Spring Boot还在跑)。
解决

  • 方法1:关掉之前的进程(IDEA点红色方块)
  • 方法2:改端口,在 src/main/resources/application.properties 加一行:
    server.port=8081
    

Q2:为什么POST请求返回400错误?

原因:没加 Content-Type: application/json 头,或者JSON格式不对。
检查

  • 请求头必须包含 Content-Type: application/json
  • JSON字段名要和Java类一致(比如 content 不能写成 Content

Q3:代码改了但没生效?

原因:Spring Boot默认不热更新。
解决

  • 每次改完代码要重启项目(开发阶段忍一忍)
  • 进阶方案:引入 spring-boot-devtools 依赖(后续教程讲)

Q4:看不懂那些注解(@RestController, @GetMapping)?

记住这个口诀

  • @RestController = 这个类专门处理网络请求
  • @GetMapping("/xxx") = 当别人用GET访问/xxx时,执行下面的方法
  • @PostMapping("/xxx") = 当别人用POST访问/xxx时,执行下面的方法

七、学习建议:下一步怎么走?

你已经跨过了最难的第一步!接下来我建议:

1. 巩固基础(1周)

  • 多写几个Controller,尝试不同请求方法(GET/POST/PUT/DELETE)
  • 学习 application.properties 配置(改端口、日志级别等)
  • 了解 @RequestParam@PathVariable 的区别

2. 连接真实数据库(2周)

  • 学习 H2(内存数据库,无需安装)
  • 再过渡到 MySQL + Spring Data JPA
  • 实现真正的“增删改查”

3. 构建完整产品功能(1个月)

  • 用户注册/登录(JWT鉴权)
  • 文件上传
  • 异常统一处理
  • 接口文档(Swagger)

📌 我的B站频道每周更新Spring Boot实战系列,从零到部署上线,欢迎关注!


结语

60分钟前,你可能连“后端”是什么都不知道;
60分钟后,你已经能写出可运行的接口,并理解它如何服务于一个“产品”。

记住:所有大神都是从 Hello World 开始的
不要怕犯错,不要怕报错——每一个红字都是你成长的脚印。

如果这篇教程帮到了你,不妨点赞收藏,也欢迎在评论区留言你的第一个Spring Boot问题。
我是阿哲,我们下期再见!

评论 0

最热最新
暂无评论
Bean没注入Lv.1
0
影响力
0
文章
0
粉丝