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

宋涛
2025-06-22 15:09
阅读 431

一、开篇:Spring Boot 是什么?用来做什么?

一、开篇:Spring Boot 是什么?用来做什么?

你有没有想过,如果想用 Java 写一个网站或者接口服务(比如微信小程序后端),该从哪里开始?也许你需要写很多配置文件,还要引入一大堆依赖库,整个过程可能会让你望而却步。

Spring Boot 就是为了解决这个问题诞生的。它是一个基于 Spring 框架的“简化版”,可以让你快速搭建一个功能完整的 Web 应用或 API 接口服务,而不必纠结于复杂的配置和繁琐的搭建流程。

简单来说:

Spring Boot = 简化版的 Spring + 自动配置 + 内嵌服务器

你可以把它理解成 Java 的“搭积木工具箱”——你只需要拼装几个模块,就能马上跑起来。

在本教程中,我们将用不到 1 小时的时间,带你从零搭建一个简单的“图书管理系统”的 API 接口,并实现基本的增删改查功能!


二、环境准备:开发环境搭建步骤(Windows / macOS)

二、环境准备:开发环境搭建步骤(Windows / macOS)

2.1 安装 JDK

Java 开发离不开 JDK(Java Development Kit),它是 Java 编程的基础工具包。

java -version

如果出现版本信息,说明安装成功。


2.2 安装 IntelliJ IDEA

我们推荐使用 IntelliJ IDEA(简称 IDEA),这是最主流的 Java 开发工具之一,对 Spring Boot 支持非常好。


2.3 创建 Spring Boot 项目(在线方式)

我们推荐使用官方提供的 Spring Initializr 来快速生成 Spring Boot 项目骨架。

步骤如下:

  1. 打开网址:https://start.spring.io/
  2. 选择配置:
    • Project: Maven
    • Language: Java
    • Spring Boot Version: 3.x(如 3.1)
  3. 输入项目信息(Group 和 Artifact 可以随意填写,例如 Group 为 com.example,Artifact 为 demo
  4. 添加依赖(Dependencies):
    • Spring Web → 构建 Web 应用(API 接口)
    • Spring Data JPA → 数据库操作
    • H2 Database → 测试用数据库
  5. 点击下方 “Generate” 下载项目压缩包

下载完成后解压,使用 IDEA 打开该项目即可开始编程!


三、核心概念:通俗易懂地讲清楚关键知识点

三、核心概念:通俗易懂地讲清楚关键知识点

下面这些是 Spring Boot 中最重要的几个概念,我们会用比喻的方式帮助你理解。


3.1 控制器(Controller)

🧠 类似快递分拣站 —— 负责接收请求并返回结果

控制器是处理 HTTP 请求的地方。你可以把它想象成快递公司的客服人员,他们接收客户的请求(打电话说我要发货),然后把任务分配给其他部门(比如打包组、运输组)。

示例代码

@RestController
@RequestMapping("/books")
public class BookController {

    @GetMapping
    public String getAllBooks() {
        return "返回所有书籍列表";
    }

}

解释:

  • @RestController:表示这个类是一个控制器,返回的是数据而不是网页。
  • @RequestMapping("/books"):设置访问路径前缀。
  • @GetMapping:表示这是一个 GET 请求,对应 /books

3.2 实体类(Entity)

🧠 类似数据库中的表格结构 —— 描述一个对象的属性

实体类是用来表示你要操作的数据模型的。比如说我们要管理一本书,那就要创建一个 Book 实体类来描述书的信息。

示例代码

@Entity
public class Book {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    private String title;
    private String author;

    // Getters and Setters
}
  • @Entity:表示这是一个实体类,会自动映射到数据库表。
  • @Id:主键字段
  • @GeneratedValue:自动生成 ID

3.3 仓库接口(Repository)

🧠 类似图书馆管理员 —— 负责和数据库打交道

Repository 是用来操作数据库的接口,Spring Data JPA 会自动帮我们实现增删改查的功能。

示例代码

public interface BookRepository extends JpaRepository<Book, Long> {
}

这个接口没有具体方法,因为它继承了 JpaRepository,默认就包含了如下的常用方法:

方法名 功能
findAll() 查询所有书籍
findById(id) 根据 ID 查询书籍
save(book) 新增或更新书籍
deleteById(id) 删除书籍

3.4 启动类(Application)

🧠 类似开关按钮 —— 运行项目的入口

每个 Spring Boot 项目都有一个启动类,通常叫 XxxApplication.java,它的主要作用就是启动内嵌服务器。

示例代码

@SpringBootApplication
public class DemoApplication {
    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }
}

运行这个类就可以启动整个项目,非常方便!


四、实战项目:一步步做一个图书管理系统 API

4.1 项目目标

微服务架构示意图-2

我们要实现以下功能的 API:

  • 获取所有书籍列表(GET /books)
  • 添加一本新书(POST /books)
  • 根据 ID 获取单本书(GET /books/{id})
  • 修改一本书的信息(PUT /books/{id})
  • 删除一本书(DELETE /books/{id})

4.2 Step by Step 开始编码

步骤 1:创建实体类 Book.java

src/main/java/com/example/demo 目录下新建文件夹 model,添加 Book.java 文件:

package com.example.demo.model;

import jakarta.persistence.*;

@Entity
public class Book {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    private String title;
    private String author;

    public Book() {}

    public Book(String title, String author) {
        this.title = title;
        this.author = author;
    }

    // Getters and Setters
}

步骤 2:创建 Repository 接口 BookRepository.java

repository 包下创建:

package com.example.demo.repository;

import com.example.demo.model.Book;
import org.springframework.data.jpa.repository.JpaRepository;

public interface BookRepository extends JpaRepository<Book, Long> {
}

步骤 3:创建 Controller BookController.java

controller 包下:

package com.example.demo.controller;

import com.example.demo.model.Book;
import com.example.demo.repository.BookRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.List;

@RestController
@RequestMapping("/books")
public class BookController {

    @Autowired
    private BookRepository bookRepository;

    @GetMapping
    public List<Book> getAllBooks() {
        return bookRepository.findAll();
    }

    @PostMapping
    public Book addBook(@RequestBody Book book) {
        return bookRepository.save(book);
    }

    @GetMapping("/{id}")
    public Book getBookById(@PathVariable Long id) {
        return bookRepository.findById(id).orElse(null);
    }

    @PutMapping("/{id}")
    public Book updateBook(@PathVariable Long id, @RequestBody Book newBook) {
        return bookRepository.findById(id)
                .map(book -> {
                    book.setTitle(newBook.getTitle());
                    book.setAuthor(newBook.getAuthor());
                    return bookRepository.save(book);
                }).orElse(null);
    }

    @DeleteMapping("/{id}")
    public void deleteBook(@PathVariable Long id) {
        bookRepository.deleteById(id);
    }
}

4.3 测试 API 接口(使用 Postman)

Postman 是一个非常好用的 API 测试工具,下载地址:https://www.postman.com/downloads/

测试建议:

请求类型 URL 示例参数
GET http://localhost:8080/books
POST http://localhost:8080/books {"title":"Spring Boot 入门", "author":"小张"}
PUT http://localhost:8080/books/1 {"title":"新标题", "author":"新作者"}
DELETE http://localhost:8080/books/1

五、常见问题解答(FAQ)

数据流转过程-1

❓ 1. 报错提示找不到 Spring Boot 启动类怎么办?

确保你的启动类有 @SpringBootApplication 注解,并且位置正确(在根目录 package 下)。


❓ 2. 如何查看数据库中的数据?

我们在项目里用了 H2 内存数据库,可以在浏览器中访问:

http://localhost:8080/h2-console

登录数据库控制台查看数据。


❓ 3. 如何修改项目启动端口?

application.properties 文件中加入:

server.port=8000

这样下次项目就会运行在 8000 端口上了。


❓ 4. 为什么我的 Postman 返回空?

请检查是否返回了 JSON 对象,并确认是否正确设置了 @RestController 注解。


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

恭喜你完成了第一个 Spring Boot 项目!接下来你可以继续学习以下几个方向:

✅ 推荐学习路线:

  1. 深入 Spring Boot 配置与注解
    • 学习更多常用的注解:@Service, @Component, @Configuration
  2. 连接 MySQL 数据库
    • 替换 H2 为 MySQL,学习数据库连接池
  3. RESTful API 设计规范
    • 更加标准化地设计你的接口
  4. 安全框架 Spring Security
    • 给你的 API 加上登录验证
  5. 部署上线:将项目打包成 jar 文件
    • 使用 mvn package 命令打包,放到服务器上运行

结语:坚持就是胜利!

虽然一开始看代码可能会有点晕,但只要跟着项目练一次,你就一定会爱上 Spring Boot 的简洁和强大。记住一句话:

“不要怕写错代码,怕的是不敢敲第一行。”

如果你喜欢这个教程,请点赞+收藏,并在评论区告诉我你遇到的疑问或想法哦!


🎉 完成时间:预计 60 分钟左右,恭喜你已经成为一名初阶 Spring Boot 开发者!

评论 0

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