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

Agent观察家
2025-12-16 15:49
阅读 427

大家好,我是掘金上的老张,一名985高校毕业的全栈工程师,同时也是一位后端讲师。这几年带过不少零基础学员,发现很多人一看到“Spring Boot”就望而却步,觉得它高深莫测。其实,Spring Boot 的设计初衷恰恰是为了简化开发!今天这篇教程,就是想用最直白的语言、最真实的项目案例,带你60分钟内写出人生第一个 Spring Boot 项目——不仅能跑起来,还能写进简历!

我当初学的时候,也是从一个连 Java 环境都配不好的小白开始的。所以特别理解新手的焦虑。别担心,跟着我一步步来,你也能行。


一、Spring Boot 是什么?为什么值得学?

简单说:Spring Boot 是一个能让你用最少配置快速搭建 Java Web 应用的框架

  • 它基于 Spring 框架,但自动帮你做了大量“样板代码”和配置。
  • 你不需要手动部署 WAR 包到 Tomcat,它内置了服务器,启动即运行。
  • 开发效率极高,适合快速构建 RESTful API、微服务、后台管理系统等。

💡 对零基础的意义
如果你想找工作(尤其是 Java 后端岗),Spring Boot 几乎是简历上的“标配”。哪怕你只做过一个简单的 Demo,只要能讲清楚流程,面试官也会眼前一亮。


二、环境准备(10分钟搞定)

在开始编码前,先确保你的电脑装好以下工具:

工具 版本建议 作用
JDK JDK 8 或 17 Java 运行环境
IDE IntelliJ IDEA(社区版免费) 代码编辑器
Maven / Gradle 自动集成 项目依赖管理

步骤 1:安装 JDK

  1. Oracle 官网OpenJDK 下载 JDK。
  2. 安装后,在终端执行 java -version,看到版本号即成功。

步骤 2:安装 IntelliJ IDEA

步骤 3:验证环境

打开终端,输入:

java -version
mvn -v  # 或 gradle -v

如果都输出版本信息,说明环境 OK!

⚠️ 避坑指南
不要使用 Eclipse!虽然它免费,但对 Spring Boot 支持不如 IDEA 友好。IDEA 社区版完全够用,且智能提示强大。


三、核心概念通俗讲

别被术语吓到,我们用“开餐馆”来类比:

技术概念 餐馆类比 说明
Controller 前台服务员 接收顾客(用户)请求,比如点菜(GET /order)
Service 厨师 处理业务逻辑,比如做菜
Repository 仓库管理员 负责读写数据库(食材库存)
Application 老板 启动整个餐馆(项目入口)

Spring Boot 的核心思想:约定优于配置
比如:你只要把类放在 controller 包里,加上 @RestController 注解,Spring Boot 就知道这是“服务员”。


四、实战项目:做一个“图书管理系统”API(40分钟)

我们将实现一个最简版的图书管理接口,支持:

  • 查看所有书(GET /books)
  • 添加新书(POST /books)

第1步:创建项目

  1. 打开 IDEA → New Project → 选择 Spring Initializr
  2. 填写:
    • Project SDK: 选择你安装的 JDK
    • Language: Java
    • Spring Boot: 选最新稳定版(如 3.2.x)
  3. 在 Dependencies 中勾选:
    • Spring Web(必须!用于构建 Web 接口)
    • (暂时不选数据库,先做内存版)

点击 Next → Finish,等待 Maven 下载依赖(首次较慢)。

🕒 此时耗时约 5 分钟

第2步:编写 Book 实体类

src/main/java/com.example.demo 下新建包 model,创建 Book.java

package com.example.demo.model;

public class Book {
    private Long id;
    private String title;
    private String author;

    // 构造函数
    public Book(Long id, String title, String author) {
        this.id = id;
        this.title = title;
        this.author = author;
    }

    // Getter 和 Setter(IDEA 可右键 Generate 自动生成)
    public Long getId() { return id; }
    public void setId(Long id) { this.id = id; }
    public String getTitle() { return title; }
    public void setTitle(String title) { this.title = title; }
    public String getAuthor() { return author; }
    public void setAuthor(String author) { this.author = author; }
}

第3步:创建 Controller

新建包 controller,创建 BookController.java

package com.example.demo.controller;

import com.example.demo.model.Book;
import org.springframework.web.bind.annotation.*;

import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.atomic.AtomicLong;

@RestController // 表示这是一个返回 JSON 的控制器
@RequestMapping("/books") // 所有接口路径以 /books 开头
public class BookController {

    // 模拟数据库(实际项目用 MySQL 等)
    private List<Book> books = new ArrayList<>();
    private AtomicLong idGenerator = new AtomicLong(1);

    // 初始化两本书
    public BookController() {
        books.add(new Book(1L, "《三体》", "刘慈欣"));
        books.add(new Book(2L, "《活着》", "余华"));
    }

    // GET /books → 返回所有书
    @GetMapping
    public List<Book> getAllBooks() {
        return books;
    }

    // POST /books → 添加新书
    @PostMapping
    public Book addBook(@RequestBody Book book) {
        long newId = idGenerator.getAndIncrement();
        book.setId(newId);
        books.add(book);
        return book;
    }
}

第4步:启动项目

找到 DemoApplication.java(名字可能不同),右键 → Run 'DemoApplication'

看到控制台输出:

Tomcat started on port(s): 8080 (http)
Started DemoApplication in 2.345 seconds

说明服务已启动!

第5步:测试接口

测试1:查看所有书

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

你会看到 JSON 数据:

[
  {"id":1,"title":"《三体》","author":"刘慈欣"},
  {"id":2,"title":"《活着》","author":"余华"}
]

测试2:添加新书

Postmancurl 发送 POST 请求:

curl -X POST http://localhost:8080/books \
  -H "Content-Type: application/json" \
  -d '{"title":"《Java编程思想》","author":"Bruce Eckel"}'

返回结果:

{"id":3,"title":"《Java编程思想》","author":"Bruce Eckel"}

再刷新 /books,新书已加入!

🎉 恭喜!你完成了第一个 Spring Boot 项目!
整个过程不到 40 分钟,代码不足 100 行。


五、新手常见问题解答

Q1:为什么我的项目启动报错?

  • 原因:端口 8080 被占用。
  • 解决:在 application.properties 中加一行:
    server.port=8081
    

Q2:@RestController 和 @Controller 有什么区别?

  • @Controller 返回页面(如 JSP),需配合模板引擎。
  • @RestController = @Controller + @ResponseBody,直接返回 JSON,适合做 API

Q3:怎么把项目打包成 jar 文件?

在 IDEA 右侧 Maven 面板 → Lifecycle → 双击 package
生成的 jar 在 target/ 目录下,执行:

java -jar demo-0.0.1-SNAPSHOT.jar

Q4:这个项目能写进简历吗?

当然可以! 简历中可写:

Spring Boot 图书管理系统(个人项目)

  • 基于 Spring Boot 快速搭建 RESTful API
  • 实现图书的增查功能,支持 JSON 数据交互
  • 使用 Postman 完成接口测试

即使简单,也证明你具备工程化思维!


六、下一步学习建议

完成本教程后,你可以按以下路径进阶:

  1. 加入数据库:学习 Spring Data JPA + H2(内存数据库)或 MySQL
  2. 分层架构:拆出 Service 层、Repository 层,理解 MVC 模式
  3. 接口文档:集成 Swagger,自动生成 API 文档
  4. 部署上线:用 Docker 打包,部署到云服务器(如阿里云 ECS)

💬 最后说一句
我带过的很多学生,都是从这样一个“玩具项目”开始,最终拿到大厂 offer。技术不怕小,怕不动手。今天你写的这几行代码,就是未来简历上“项目经验”的起点。


行动建议
现在就打开 IDEA,跟着教程敲一遍代码!遇到问题,欢迎在评论区留言。60分钟后,你会感谢此刻开始的自己。

作者:老张(掘金 ID:全栈老张)
专注 Java & 全栈教学,每周更新零基础实战教程。

评论 0

最热最新
暂无评论
匿名用户Lv.1
0
影响力
0
文章
0
粉丝