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

萧秀英
2025-06-30 14:19
阅读 211

开篇:Spring Boot是什么?我能用它做什么?

开篇:Spring Boot是什么?我能用它做什么?

你可能听说过Java是一门很强大的编程语言,适合开发大型企业级应用。而Spring Boot,就是让用Java开发Web应用变得更加简单、高效的一个工具。

你可以把它想象成一个“预制菜包”——原本你要从头开始准备材料(比如配置服务器、写数据库连接代码),现在Spring Boot已经帮你准备好了基础框架和常用功能,你只需要专注于核心业务逻辑的编写就行了!

用Spring Boot你能做些什么?

  • 创建后台接口(API)
  • 搭建网站的后端服务
  • 连接并操作数据库
  • 快速搭建微服务架构的基础组件
  • 甚至用来写小型的桌面程序或定时任务系统

总之,它是现代Java开发中非常主流的工具之一,非常适合初学者上手。


环境准备:你需要安装哪些东西?

环境准备:你需要安装哪些东西?

在开始写代码之前,我们要先准备好开发环境。不要担心,整个过程只需下载几个软件,按步骤来就可以完成。

第一步:安装Java开发工具包(JDK)

Spring Boot是基于Java的,所以我们需要安装JDK(Java Development Kit)

推荐版本:JDK 8 到 JDK 17之间都可以

下载地址:https://adoptium.net/zh-CN/temurin/releases/?version=17

安装完成后,在命令行中输入:

java -version

出现类似如下输出说明安装成功:

openjdk version "17.0.5" ...

第二步:安装开发工具 IntelliJ IDEA

我们推荐使用 IntelliJ IDEA(社区版即可),它是专门用于Java开发的强大IDE(集成开发环境)。

下载地址:https://www.jetbrains.com/idea/download/

安装完成后打开,稍后我们将用它来创建Spring Boot项目。


第三步:验证Maven配置(可选)

Spring Boot默认使用Maven来管理项目依赖。如果你使用的是IDEA,默认已经内置了Maven插件。但你也可以手动检查一下是否有Maven支持。

小贴士:如果你是Windows用户,可以顺便设置下环境变量方便后续学习,但这一步对新手来说不是必须的。


核心概念:Spring Boot到底有哪些关键词要记住?

核心概念:Spring Boot到底有哪些关键词要记住?

在正式写代码前,我们先了解一些基本概念。不用担心,这些都将以最通俗的语言讲解清楚。


1. 什么是Spring Boot?

Spring Boot 是 Spring Framework 的扩展。它提供了一种更快速的方式来构建独立运行的、生产级别的Spring应用程序,特别适合Web应用和服务的开发。

它简化了传统Spring项目的复杂配置流程,实现了所谓的“零配置起步”。


2. Starter依赖

Spring Boot 提供了许多预定义的“Starter”依赖,它们本质上是一些模块化的功能包。

例如:

  • spring-boot-starter-web:开发Web应用所需的功能
  • spring-boot-starter-data-jpa:与数据库交互的标准方式
  • spring-boot-starter-test:测试相关库的集合

我们在创建项目的时候可以选择需要的Starter,自动引入相关功能。


3. 自动配置(Auto Configuration)

这是Spring Boot的最大特点之一。

以往,我们需要自己手动写很多配置文件来启用某些功能。而在Spring Boot中,只要添加相应的Starter依赖,大部分配置都会自动完成

比如加入Web的Starter之后,会自动启动Tomcat服务器,无需额外编码。


4. Application主类

每个Spring Boot项目都有一个带有@SpringBootApplication注解的主类。这个类作为项目的入口点,相当于Java程序中的main()方法。

示例代码如下:

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

这段代码的作用是:启动Spring Boot应用


5. Controller(控制器)

Controller 是Spring MVC中的核心概念之一。它是负责处理 HTTP 请求的地方,比如接收GET、POST请求,返回响应结果。

示例代码如下:

@RestController
public class HelloController {
    
    @GetMapping("/hello")
    public String sayHello() {
        return "Hello, Spring Boot!";
    }
}

当访问/hello路径时,将看到页面显示“Hello, Spring Boot!”


6. RESTful API

REST是一种设计风格,通常用于开发前后端分离的应用。Spring Boot天然支持RESTful API的设计。

你可以通过简单的注解快速实现接口开发,比如上面的例子就是一个典型的GET接口。


实战项目:动手做一个“学生信息查询”接口

让我们一起创建一个完整的Spring Boot项目,并实现一个简单的REST接口,查询学生列表。


第一步:创建Spring Boot项目

  1. 打开 https://start.spring.io/
  2. 配置如下内容:
    • Project: Maven
    • Language: Java
    • Spring Boot Version: 最新稳定版(比如 3.x)
    • Group: com.example
    • Artifact: student-api
  3. 添加两个依赖:
    • Spring Web
    • Spring Data JPA(数据库操作)
  4. 点击【Generate】按钮下载项目压缩包

解压后用IntelliJ IDEA导入该项目即可。


第二步:项目结构简介

导入到IDEA后,你会看到以下目录结构:

student-api/
├── src/
│   ├── main/
│   │   ├── java/
│   │   │   └── com/example/studentapi/
│   │   │       ├── StudentApiApplication.java
│   │   │       └── controller/
│   │   │       └── model/
│   │   │       └── repository/
│   │   ├── resources/
│   │       ├── application.properties
│   │       └── data.sql
│   └── test/
└── pom.xml

其中几个关键文件:

  • pom.xml:项目的配置文件,包含了所有依赖项。
  • application.properties:配置参数,如数据库连接等。
  • StudentApiApplication.java:主启动类

第三步:创建模型类 Model

我们在model包中新建一个Student类,表示一个学生实体。

package com.example.studentapi.model;

import jakarta.persistence.*;

@Entity
@Table(name = "students")
public class Student {

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

    private String name;
    private int age;
    private String email;

    // Getters and Setters
    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }
}

注意:这里使用的是Spring Boot 3+中新的jakarta.persistence.*命名空间。


第四步:创建仓库接口 Repository

Spring Data JPA 提供了一个非常便捷的数据库访问方式,我们只需定义一个接口,继承JpaRepository即可自动获得CRUD能力。

repository包中创建:

package com.example.studentapi.repository;

import com.example.studentapi.model.Student;
import org.springframework.data.jpa.repository.JpaRepository;

public interface StudentRepository extends JpaRepository<Student, Long> {
}

第五步:编写控制器 Controller

接下来,编写一个API接口,获取所有学生的数据。

controller包中创建:

package com.example.studentapi.controller;

import com.example.studentapi.model.Student;
import com.example.studentapi.repository.StudentRepository;
import org.springframework.web.bind.annotation.*;

import java.util.List;

@RestController
@RequestMapping("/api/students")
public class StudentController {

    private final StudentRepository studentRepository;

    public StudentController(StudentRepository studentRepository) {
        this.studentRepository = studentRepository;
    }

    // 获取所有学生
    @GetMapping
    public List<Student> getAllStudents() {
        return studentRepository.findAll();
    }

    // 新增学生
    @PostMapping
    public Student createStudent(@RequestBody Student student) {
        return studentRepository.save(student);
    }
}

第六步:配置内存数据库 H2 Database

我们先用轻量的H2内存数据库进行测试。打开resources/application.properties添加以下内容:

spring.datasource.url=jdbc:h2:mem:testdb
spring.datasource.driverClassName=org.h2.Driver
spring.datasource.username=sa
spring.datasource.password=
spring.jpa.hibernate.ddl-auto=update
spring.h2.console.enabled=true

这段配置告诉Spring Boot:

  • 使用H2内存数据库
  • 自动建表
  • 启用H2控制台(后面可以查看数据)

第七步:添加测试数据

resources/data.sql文件中加入初始数据:

INSERT INTO students(name, age, email) VALUES('张三', 22, 'zhangsan@example.com');
INSERT INTO students(name, age, email) VALUES('李四', 23, 'lisi@example.com');

第八步:运行并测试接口

点击IDEA中绿色的运行按钮,启动Spring Boot应用。

启动后,访问以下几个URL:

你可以使用Postman或浏览器测试新增功能:

发送POST请求到 /api/students,JSON格式如下:

{
  "name": "王五",
  "age": 24,
  "email": "wangwu@example.com"
}

常见问题解答

API接口文档-1

在初学阶段,你可能会遇到一些问题,以下是常见问题及解决方案:


Q1:项目启动报错,找不到spring-boot-maven-plugin

这是因为没有正确加载Maven依赖。请执行以下步骤:

  1. 在IDEA右侧点击刷新Maven
  2. 或在命令行运行:
    mvn clean install
    

Q2:访问接口返回404怎么办?

可能是请求路径不正确,请检查控制器上的@RequestMapping和方法上的@GetMapping路径是否拼写正确。

确保你的URL是 http://localhost:8080/api/students


Q3:数据库没数据,data.sql没生效?

确认data.sql文件位于resources/目录下,并且Spring Boot有权限读取。

还可以开启日志,观察启动时是否有SQL执行记录。


Q4:启动时报错“UnknownHostException”?

可能是本地网络问题或DNS异常,重启电脑或网络重连试试。不影响功能正常使用的话可以忽略。


学习建议:下一步我该学什么?

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


✅ 更高级的Web开发技能:

  • 表单提交与校验(@Valid)
  • 文件上传与下载
  • 安全机制(Spring Security)
  • 全局异常处理

✅ 数据库进阶:

  • MySQL / PostgreSQL 等真实数据库接入
  • 分页查询
  • 多表关联查询
  • 数据库事务管理

✅ 接口文档自动化(Swagger):

学习如何自动生成API文档,方便团队协作和前端对接。


✅ 微服务基础(Spring Cloud):

  • 负载均衡
  • 服务注册与发现
  • 网关、配置中心
  • 熔断与降级

🧠 综合项目练习建议:

  • 博客系统
  • 商品管理系统
  • 个人记账本App后端
  • 注册登录功能 + Token认证

总结

虽然刚开始看起来有些陌生,但你会发现Spring Boot实际上是非常友好的开发者友好型工具。只要你坚持动手实践,逐步积累经验,很快就能够用它开发出属于自己的Web应用或后端服务。

记住:“学会编程最好的方式,就是写代码。”

现在就打开IDEA,试着自己重新写一遍刚才的小项目吧!你一定可以的!🚀

评论 0

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