# Spring Boot 入门基础教程 · 飞宝课导读

为什么学习 Spring Boot?

在现代 Java 开发领域,Spring Boot 已经成为构建企业级应用的**首选框架**。它大幅简化了传统 Spring 项目的配置复杂度,让开发者能够以"约定优于配置"的方式快速搭建可运行的 Web 服务。无论是创业团队的 MVP 验证,还是大型企业的微服务基础设施,Spring Boot 都提供了成熟且高效的解决方案。

本课程面向**零基础或有 Java 基础的初学者**,从零开始带你掌握 Spring Boot 的核心能力,最终独立完成一个具备完整前后端交互能力的 Web 项目,并学会如何将其部署上线。

---

课程地图:五大模块,循序渐进

模块一:Hello World —— 迈出第一步 课程从最经典的"你好,世界"入手,带你体验 Spring Boot **自动配置**的魔力。你无需编写繁杂的 XML 或注解,仅凭几个依赖声明即可启动一个 RESTful API 服务。此外,本模块还涵盖了 JSP 与 Freemarker 模板引擎的整合,帮助你理解 Spring Boot 对传统 Web 技术的支持方式。

模块二:Servlet 生态 —— 理解底层机制 Spring Boot 基于 Servlet 规范构建,深入理解 Servlet、过滤器(Filter)、监听器(Listener)以及拦截器的工作原理,是成为合格后端工程师的必经之路。本模块详细讲解**两种注册方式**(注解驱动与代码配置),并通过实战让你亲手实现这些核心组件,为后续学习 Spring MVC 打下坚实基础。

模块三:工程化能力 —— 静态资源、日志与启动加载 一个生产就绪的应用离不开完善的工程化支持。本模块将教你如何处理静态资源(CSS、JavaScript、图片等),如何配置**多级日志输出**以便于问题排查,以及如何利用 `ApplicationRunner` 和 `CommandLineRunner` 在应用启动时预加载关键数据。

模块四:数据持久层 —— JDBC、MyBatis 与事务管理 数据是应用的核心。本模块采用渐进式教学,先通过原生 JDBC 理解数据库连接的本质,再过渡到流行的 MyBatis ORM 框架,学习如何通过注解或 XML 完成 CRUD 操作。最后,重点讲解 Spring 声明式事务的配置方式,确保你的数据操作具备**原子性与一致性保障**。

模块五:部署上线 —— 从本地到生产环境 开发完成只是第一步,如何将服务稳定地发布出去同样重要。本模块介绍 Spring Boot 内嵌 Tomcat 的配置方法,以及打包为可执行 JAR 后进行部署的完整流程,让你体验**一次构建、到处运行**的便捷。

---

学习建议

- **动手为王**:Spring Boot 是一门实践性极强的技术,务必跟随视频逐步敲代码,切忌只看不练。
- **理解原理**:遇到配置问题时,尝试查阅官方文档,理解"为什么这样配置",而非盲目复制。
- **延伸探索**:学完本课后,建议进一步学习 Spring Security(安全认证)、Spring Data JPA(JPA 持久层)及 Spring Cloud(微服务生态),构建完整的技术栈认知。

期待在课程中与你一起开启 Spring Boot 的学习之旅!

课程目录

1-1 [spring boot - hello word] 课程介绍 (06:11)
1-2 [spring boot - hello word] 编写rest接口 - hello world (11:40)
1-3 [spring boot - hello word] 整合jsp和freemarker (15:14)
2-1 [spring boot - servlet、过滤器、监听器、] 注册servlet的两种方式 (06:22)
2-2 [spring boot - servlet、过滤器、监听器、] 实现servlet/filter/listener/拦截器 (16:14)
3-1 [spring boot - 日志、静态资源、启动加载数据] 静态资源处理 (07:33)
3-2 [spring boot - 日志、静态资源、启动加载数据] 启动加载数据/日志处理 (08:25)
4-1 [spring boot - 数据库配置及事务原理] spring-boot-JDBC实践 (10:03)
4-2 [spring boot - 数据库配置及事务原理] spring-boot-mybatis实践 (08:39)
4-3 [spring boot - 数据库配置及事务原理] spring-boot-事务实践 (16:36)
5-1 [spring boot - 服务发布部署tomcat] 部署Deploy (13:15)