Spring Boot入门教程:60分钟快速上手
开篇:Spring Boot是什么?我能用它做什么?

如果你刚开始学习编程,或者想进入后端开发领域,可能会听说过一个叫做 Spring 的技术。它是一个非常流行的 Java 框架,用来构建企业级的后端服务(比如淘宝、京东等网站背后的系统)。而 Spring Boot 就是 Spring 家族中最“友好”的一个成员。
简单来说,Spring Boot 是一个帮你快速搭建 Java 后端项目的工具。它的最大优点就是:
- 不需要写很多配置文件
- 内置了服务器(比如 Tomcat)
- 启动快、结构清晰、容易扩展
你可以用 Spring Boot 来开发各种 Web 系统、API 接口、微服务等。无论你是做一个个人博客、还是将来做大型分布式系统,Spring Boot 都是个很好的起点。
环境准备:你需要安装哪些东西?

在开始编码之前,你需要准备好以下开发环境:
第一步:安装 Java
Spring Boot 是基于 Java 的,所以首先要安装好 Java 运行环境。
- 下载 JDK(推荐使用 OpenJDK 17):
- 安装完成后,在命令行输入:
如果能正确显示版本号(比如 17),说明安装成功。java -version
第二步:安装开发工具(IDE)
我们推荐使用 IntelliJ IDEA 或者 Eclipse。这里以 IntelliJ IDEA 社区版为例:
- 下载地址:https://www.jetbrains.com/idea/download/
- 安装完成后打开即可。
提示:如果你不熟悉这些工具,可以先使用 Spring Initializr 在线生成项目框架,再导入 IDE。
第三步:创建第一个 Spring Boot 项目
我们可以用 Spring Initializr 快速生成项目模板:
- 打开 https://start.spring.io/
- 填写如下信息:
- Project: Maven
- Language: Java
- Spring Boot Version: 3.x(建议选当前最新的稳定版本)
- Group: com.example
- Artifact: demo
- Name: demo
- Packaging: Jar
- Java: 17
- 添加依赖(Dependencies):
- Spring Web (用于构建 Web 应用)
- 点击 "Generate" 下载 ZIP 文件
- 解压后,用 IntelliJ 打开该项目
这样我们就准备好了 Spring Boot 项目的开发环境。
核心概念:什么是 Controller、Service、Model?我为什么需要它们?

当你拿到一个 Spring Boot 项目的时候,你可能会看到一些常见的类和文件夹,比如 Controller、Service、Repository 等。这些不是随便起的名字,而是约定俗成的代码组织方式。我们一起来看看它们分别代表什么:
1. Controller(控制器)
作用:处理网页或 API 请求(如浏览器请求某个 URL)
举个例子:
@RestController
public class HelloController {
@GetMapping("/hello")
public String sayHello() {
return "Hello, Spring Boot!";
}
}
上面这个类表示当访问 /hello 路径时,返回一句问候语。是不是很简单?
2. Service(服务层)
作用:处理具体的业务逻辑,比如计算价格、验证用户身份等
例如:
@Service
public class GreetingService {
public String greet(String name) {
return "你好," + name;
}
}
然后我们在 Controller 中调用它:
@RestController
public class HelloController {
@Autowired
private GreetingService greetingService;
@GetMapping("/greet/{name}")
public String greetUser(@PathVariable String name) {
return greetingService.greet(name);
}
}
这叫“分层开发”——把不同的功能分到不同的类中管理起来更方便。
3. Repository(数据访问层)
如果你要操作数据库,就需要这个层。
例如连接 MySQL 数据库,读取用户信息:
public interface UserRepository extends JpaRepository<User, Long> {
}
我们会在实战项目中详细讲这部分。
4. Model(模型/实体)
对应数据库中的表结构。例如一个 User 表:
@Entity
public class User {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String name;
private String email;
// Getter / Setter / toString()
}
实战项目:60分钟做出一个简易记事本应用

接下来我们要完成一个简单的记事本应用(To-Do List),包含以下几个功能:
- 查看所有待办事项
- 新增一个待办事项
- 删除某个事项
第一步:创建 Spring Boot 项目
还记得前面提到的 Spring Initializr 吗?这次我们选择添加如下依赖:
- Spring Web
- Spring Data JPA
- H2 Database(测试用内存数据库)
下载项目并解压后导入 IntelliJ。
第二步:定义模型(Model)
我们来创建一个名为 Todo 的类:
@Entity
public class Todo {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String content;
private boolean completed;
public Todo() {}
public Todo(String content, boolean completed) {
this.content = content;
this.completed = completed;
}
// Getter / Setter 和 toString()
}
第三步:创建数据访问接口(Repository)
新建一个接口:
public interface TodoRepository extends JpaRepository<Todo, Long> {
}
Spring Boot 会自动实现这个接口的功能。
第四步:创建服务(Service)
@Service
public class TodoService {
@Autowired
private TodoRepository todoRepository;
public List<Todo> getAllTodos() {
return todoRepository.findAll();
}
public void addTodo(String content) {
todoRepository.save(new Todo(content, false));
}
public void deleteTodo(Long id) {
todoRepository.deleteById(id);
}
}
第五步:创建控制器(Controller)
@RestController
@RequestMapping("/todos")
public class TodoController {
@Autowired
private TodoService todoService;
@GetMapping
public List<Todo> getAll() {
return todoService.getAllTodos();
}
@PostMapping
public void add(@RequestParam String content) {
todoService.addTodo(content);
}
@DeleteMapping("/{id}")
public void delete(@PathVariable Long id) {
todoService.deleteTodo(id);
}
}
第六步:运行并测试你的程序!
点击 IntelliJ 中的 Run 按钮运行程序,等待启动成功后:
- 访问:http://localhost:8080/todos (查看所有待办)
- 浏览器访问 http://localhost:8080/todos?content=买菜&content=洗衣服 (新增两条记录)
- 使用 Postman 或 curl 删除某条内容:
curl -X DELETE http://localhost:8080/todos/1
恭喜你!你现在拥有一个完整的前后端交互能力的小小 Web 应用了!
常见问题解答(FAQ)
Q1:启动时报错 “Port 8080 is already in use”,怎么办?
A:说明本地已经有其他服务占用了 8080 端口。可以在 application.properties 中修改为其他端口,例如:
server.port=8081
Q2:找不到依赖项,提示“No such bean”怎么办?
A:可能是没有正确添加注解或注入失败。检查是否:
- 类上有
@Service/@Component - 控制器中使用
@Autowired正确注入了对象
Q3:我想换成 MySQL 怎么做?
A:只需在 application.properties 改几个配置:
spring.datasource.url=jdbc:mysql://localhost:3306/your_db
spring.datasource.username=root
spring.datasource.password=your_password
spring.jpa.hibernate.ddl-auto=update
别忘了加 MySQL 驱动依赖哦!
学习建议:下一步学什么?
恭喜你完成了从零到一的突破!接下来,你可以继续深入以下方向:
✅ 学习更多 Spring Boot 功能
- Spring Security(权限控制)
- Spring Boot Actuator(系统监控)
- 异常处理、日志记录、定时任务等实用功能
✅ 学习前后端联调技巧
- RESTful API 设计规范
- 如何与前端 Vue/React/Angular 对接
- 使用 Swagger 编写 API 文档
✅ 实践大型项目经验
- 分布式架构(Spring Cloud)
- 微服务、消息队列、缓存机制
- 多人协作开发流程(Git + Jenkins)
结束语
Spring Boot 并不难,只要跟着步骤一步步来,你就能很快上手。希望这篇《Spring Boot入门教程:60分钟快速上手》能成为你入门的第一个跳板。记住:编程最重要的是动手实践。不要害怕报错,遇到问题就去查、去试,终将掌握属于自己的技术!
继续加油吧,未来的程序员!🚀

评论 0