先认清缺口:别把框架当黑盒
很多转岗或速成上手的开发者,写增删改查没问题,但一被问到 Bean 生命周期、循环依赖、作用域区别就卡壳。这门 Spring 体系课解决的就是“只会用注解、不懂底层运转”的脱节问题。它适合已经掌握 Java 基础语法、了解面向对象思想,但在企业级开发框架上存在系统性认知缺口的学习者。如果你写 @Autowired 时不知道容器在背后做了什么动作,或者看不懂 XML 配置和注解配置怎么互相替换,说明你的核心地基没打牢。别假装都会,直接从 IOC 容器和 Bean 的创建方式开始查漏补缺,把框架从“能跑就行”的黑盒变成透明机制。
补漏路线:从容器机制到注入细节
建议先死磕 Spring IOC 容器和创建 Bean 的方式这两块,理解容器如何接管对象控制权。接着顺藤摸瓜看 Bean 的生命周期、作用域和懒加载,搞清楚对象从实例化到销毁经历了哪些阶段,以及单例和多例在内存中的差异。然后重点补依赖注入部分,把 set 注入、构造器注入、集合注入和自动注入放在一起对比练,弄明白不同注入方式在应对复杂依赖时的优劣。最后去啃注解配置,这是现代开发的主流,但只有理解了前面的 XML 体系,才能明白注解到底简化了什么。这部分资料不要只看不动手,必须跟着敲代码验证每一个特性,比如手动改一下作用域,观察控制台输出里对象创建的时机变化。
学完能独立做什么
看完这套资料并配合练习后,你应该能脱离照抄教程的依赖,独立搭建一个完整的 Spring 基础项目。具体来说,你能根据业务需求选择合适的依赖注入方式,能通过注解或配置精准控制 Bean 的作用域和加载时机,还能在项目遇到依赖冲突或初始化报错时,顺着生命周期逻辑定位问题,而不是只会重启或删代码重写。
资料怎么配合练习
资料包里的视频线索主要用来理解底层概念,但看懂和会写是两码事。练习时,建议自己建一个干净的 Maven 工程,不要用教程现成代码。每看完一个章节,比如生命周期,就在自己的工程里写一个包含初始化方法和销毁方法的类,在方法里打印日志,然后关闭容器看日志触发顺序。对于集合注入和自动注入,自己造几个互相依赖的类,分别用 XML 和注解实现一遍相同功能。遇到不懂的点,倒回去重看对应章节视频,缺什么补什么,直到把 IOC 容器的运转机制在脑子里跑通为止。
课程目录
1-1 [Spring章节] Spring 介绍 (53:02) 1-2 [Spring章节] Spring IOC容器 (39:54) 1-3 [Spring章节] 创建Bean的方式 (52:09) 1-4 [Spring章节] 生命周期 (21:38) 1-5 [Spring章节] bean的作用域 (12:39) 1-6 [Spring章节] Bean的懒加载 (15:37) 1-7 [Spring章节] 依赖注入-set方式注入 (31:48) 1-8 [Spring章节] 依赖注入-构造器注入 (23:25) 1-9 [Spring章节] 集合注入 (23:54) 1-10 [Spring章节] 自动注入 (27:48) 1-11 [Spring章节] 注解配置(上) (30:19) 1-12 [Spring章节] 注解配置(中) (35:43) 1-13 [Spring章节] 注解配置(下) (09:29) 1-14 [Spring章节] Aop概述 (19:19) 1-15 [Spring章节] Aop 概念和术语 (27:31) 1-16 [Spring章节] 静态代理和动态代理 (45:00) 1-17 [Spring章节] Spring Aop 注解配置 (01:07:37) 1-18 [Spring章节] Spring Aop xml 配置 (15:36) 1-19 [Spring章节] Spring-jdbc 上 (37:46) 1-20 [Spring章节] Spring-jdbc 中 (20:22) 1-21 [Spring章节] Spring-jdbc 下 (28:12) 1-22 [Spring章节] Spring 事务介绍 (22:09) 1-23 [Spring章节] Spring 事务配置 (50:51) 1-24 [Spring章节] Spring 事务熟悉(续) (44:22) 2-1 [JPA 章节] JPA 介绍 (14:30) 2-2 [JPA 章节] JPA 入门案例 (33:35) 2-3 [JPA 章节] JPA 增删改查 (24:49) 2-4 [JPA 章节] 多对一关联映射 (32:40) 2-5 [JPA 章节] 一队多关联映射 (16:49) 2-6 [JPA 章节] JPA 多对多映射 (31:55) 2-7 [JPA 章节] JPA 一对一映射 (19:30) 2-8 [JPA 章节] JPA 级联操作 (06:04) 2-9 [JPA 章节] JPQL 查询 (58:13) 2-10 [JPA 章节] 二级缓存 (25:20) 2-11 [JPA 章节] Spring 整合JPA(上) (17:31) 2-12 [JPA 章节] Spring 整合 JPA( 下 ) (39:15) 3-1 [Spring Data章节] Spring Data入门 (35:56) 3-2 [Spring Data章节] Spring Data CrudRepository (19:16) 3-3 [Spring Data章节] Spring Data PagingAndSortingRe (20:34) 3-4 [Spring Data章节] Spring Data JpaRepository (11:36) 3-5 [Spring Data章节] Query注解&Modifying注解 (17:46) 4-1 [Spring MVC章节] Spring Mvc概述以及项目架构介绍 (21:44) 4-2 [Spring MVC章节] SpringMvc入门案例 (53:15) 4-3 [Spring MVC章节] 常用注解(上)+数据存储方式以及获取方式 (56:26) 4-4 [Spring MVC章节] 参数接收方案 (08:57) 4-5 [Spring MVC章节] 相对路径以及很路径讲解 (10:06) 4-6 [Spring MVC章节] 回顾以及任务划分 (17:00) 4-7 [Spring MVC章节] 资源跳转(请求转发以及重定向) (22:28) 4-8 [Spring MVC章节] SpringMVC+Spring+Mybatis框架整合 (55:54) 5-1 [SpringMVC+JPA章节] 整合SpringMVC-创建工程 (04:40) 5-2 [SpringMVC+JPA章节] 整合SpringMVC-添加依赖 (03:35) 5-3 [SpringMVC+JPA章节] 整合SpringMVC-web.xml配置 (13:13) 5-4 [SpringMVC+JPA章节] 整合SpringMVC-配置SpringMvc (05:23) 5-5 [SpringMVC+JPA章节] 整合SpringMVC-测试SpringMvc (04:58) 5-6 [SpringMVC+JPA章节] 整合SpringMVC-测试Spring容器 (10:44) 5-7 [SpringMVC+JPA章节] 整合日志-slf4j (02:15) 5-8 [SpringMVC+JPA章节] 整合JPA-添加依赖 (07:03) 5-9 [SpringMVC+JPA章节] 整合JPA-数据源配置 (05:58) 5-10 [SpringMVC+JPA章节] 整合JPA-JPA相关配置&事务配置 (08:52) 5-11 [SpringMVC+JPA章节] 整合JPA-逆向工程创建表 (13:55) 5-12 [SpringMVC+JPA章节] 整合Easyui (16:02) 5-13 [SpringMVC+JPA章节] 整合Easyui添加菜单 (04:15) 5-14 [SpringMVC+JPA章节] 整合Easyui动态添加页签 (12:26) 5-15 [SpringMVC+JPA章节] 整合Easyui添加员工列表控制器 (11:04) 5-16 [SpringMVC+JPA章节] 整合Easyui查询员工列表 (30:37) 5-17 [SpringMVC+JPA章节] 整合Easyui开启分页插件 (23:05) 5-18 [SpringMVC+JPA章节] 整合Easyui开启复选框 (07:52) 5-19 [SpringMVC+JPA章节] 整合Easyui删除功能前段编码 (11:39) 5-20 [SpringMVC+JPA章节] 整合Easyui删除功能后端编码 (18:56) 5-21 [SpringMVC+JPA章节] 整合Easyui添加功能前端编码 (11:06) 5-22 [SpringMVC+JPA章节] 整合Easyui添加功能后端编码 (16:49) 5-23 [SpringMVC+JPA章节] 整合Easyui异步加载部门信息 (32:58) 5-24 [SpringMVC+JPA章节] 整合Easyui修改功能前段编码 (20:22) 5-25 [SpringMVC+JPA章节] 整合Easyui修改功能日期显示 (09:05) 5-26 [SpringMVC+JPA章节] 整合Easyui修改功能后台编码 (19:44) 5-27 [SpringMVC+JPA章节] 整合Easyui登录页面 (19:47) 5-28 [SpringMVC+JPA章节] 整合Easyui登录功能准备数据 (03:45) 5-29 [SpringMVC+JPA章节] 整合Easyui登录功能后端编码 (13:58) 5-30 [SpringMVC+JPA章节] 整合Easyui表单验证 (13:26) 5-31 [SpringMVC+JPA章节] 整合Easyui非法登录拦截 (12:24) 6-1 [spring boot章节] springboot简介以及插件安装 (12:06) 6-2 [spring boot章节] springboot入门实例 (13:08) 6-3 [spring boot章节] springboot热部署以及单元测试 (21:02) 6-4 [spring boot章节] springboot生成jar (10:58) 6-5 [spring boot章节] springboot之properties配置 (13:17) 6-6 [spring boot章节] springboot之yaml配置 (11:27) 6-7 [spring boot章节] springboot多环境配置 (17:35) 6-8 [spring boot章节] springboot之日志配置Logback (20:17) 6-9 [spring boot章节] FreeMarker简介 (05:45) 6-10 [spring boot章节] FreeMarker入门示例 (14:43) 6-11 [spring boot章节] FreeMarker乱码问题 (02:54) 6-12 [spring boot章节] FreeMarker输出对象数据 (13:29) 6-13 [spring boot章节] FreeMarker遍历输出list (08:17) 6-14 [spring boot章节] FreeMarker遍历输出map1 (05:58) 6-15 [spring boot章节] FreeMarker遍历输出Map2 (04:24) 6-16 [spring boot章节] FreeMarker中ifelse的使用 (04:56) 6-17 [spring boot章节] FreeMarker时间处理 (04:25) 6-18 [spring boot章节] Springboot整合FreeMarker (20:14) 6-19 [spring boot章节] springboot整合thymeleaf (27:09) 6-20 [spring boot章节] springbootthymeleaf循环遍历 (13:14) 6-21 [spring boot章节] springbootthymeleaf条件求值 (10:16) 6-22 [spring boot章节] springbootthymeleafurl和字符串 (22:59) 6-23 [spring boot章节] springbootthymeleaf下拉列表 (04:39) 6-24 [spring boot章节] springboot错误处理(一) (17:40) 6-25 [spring boot章节] springboot错误处理(二) (06:20) 6-26 [spring boot章节] springboot错误处理(三) (14:04) 6-27 [spring boot章节] 使用Servlet,Filter,Listener(一) (26:01) 6-28 [spring boot章节] 使用Servlet,Filter,Listener(二) (10:38) 6-29 [spring boot章节] 使用Servlet,Filter,Listener(三) (03:35) 6-30 [spring boot章节] springboot之文件上传 (21:21) 6-31 [spring boot章节] Springboot之文件下载 (14:47) 6-32 [spring boot章节] 整合 Springjdbc(添加、修改、删除) (25:22) 6-33 [spring boot章节] 整合 Springjdbc(查询) (13:59) 6-34 [spring boot章节] 整合 SpringDataJPA(添加、修改) (16:35) 6-35 [spring boot章节] 整合 SpringDataJPA(删除) (02:18) 6-36 [spring boot章节] 整合 SpringDataJPA(查询单个信息findOne (03:00) 6-37 [spring boot章节] 整合 SpringDataJPA(查询单个信息findByI (01:12) 6-38 [spring boot章节] 整合 SpringDataJPA(查询多个findByXxx (18:46) 6-39 [spring boot章节] 整合MyBatis(注解方式使用) (19:09) 6-40 [spring boot章节] 整合MyBatis (XML方式使用查询) (16:14) 6-41 [spring boot章节] 整合redis (44:48) 6-42 [spring boot章节] 整合EhCache(缓存) (53:24) 6-43 [spring boot章节] 整合Redi(缓存) (14:00) 7-1 [SpringCloud] 微服务的描述 (16:11) 7-2 [SpringCloud] 微服务架构 与微服务优点与缺点 (17:42) 7-3 [SpringCloud] 微服务技术栈与为什么选择SpringCloud (22:25) 7-4 [SpringCloud] SpringCloud 是什么 (09:22) 7-5 [SpringCloud] Spring Cloud与Spring Boot的区别 (03:24) 7-6 [SpringCloud] Dubbo 与SpringCloud的区别与参考文档 (11:27) 7-7 [SpringCloud] 微服务架构模块 (03:35) 7-8 [SpringCloud] 微服务的分包分模块的创建聚合工程 (18:00) 7-9 [SpringCloud] 微服务提供者01 (21:11) 7-10 [SpringCloud] 微服务提供者逻辑的编写 (51:15) 7-11 [SpringCloud] 微服务消费者工程01 (44:53) 7-12 [SpringCloud] 微服务消费者的访问 (11:36) 7-13 [SpringCloud] Eureka原理 (18:33) 7-14 [SpringCloud] Eureka的三大角色 (01:42) 7-15 [SpringCloud] EurkeaServer-服务注册中心 (20:13) 7-16 [SpringCloud] 微服务注册进Eureka服务中心 (16:54) 7-17 [SpringCloud] Actuator与注册微服务完善 (25:06) 7-18 [SpringCloud] Eureka自我保护机制 (14:20) 7-19 [SpringCloud] Eureka服务发现-Discovery (19:54) 7-20 [SpringCloud] Eureka集群配置 (28:00) 7-21 [SpringCloud] Eureka比Zookeeper对比 (19:45) 7-22 [SpringCloud] Ribbon概述 (08:44) 7-23 [SpringCloud] 初级配置Ribbon (17:46) 7-24 [SpringCloud] Ribbon配置负载均衡 (21:48) 7-25 [SpringCloud] Ribbon核心组件IRule (15:56) 7-26 [SpringCloud] Ribbo自定义的策略 (32:26) 7-27 [SpringCloud] Feign(负载均衡)是什么 (09:09) 7-28 [SpringCloud] Feign(负载均衡)的使用 (38:25) 7-29 [SpringCloud] Hystrix断路器概述 (11:28) 7-30 [SpringCloud] 服务熔断 (03:19) 7-31 [SpringCloud] Hystrix(断路器)-服务熔断 (28:18) 7-32 [SpringCloud] Hystrix (断路器)-服务降级 (29:13) 7-33 [SpringCloud] hystrixDashboard概述 (03:07) 7-34 [SpringCloud] hystrixDashboard监控服务 (17:36) 7-35 [SpringCloud] hystrixDashboard图像报表的体现与认识 (06:35) 7-36 [SpringCloud] Zuul服务注册到Eureka (20:07) 7-37 [SpringCloud] zuul访问映射规则与前缀 (11:12) 7-38 [SpringCloud] Config分布式配置中心概述 (15:47) 7-39 [SpringCloud] Config服务端与Github通信 (18:52) 7-40 [SpringCloud] Config-Client 通过Config-Server获 (26:17) 7-41 [SpringCloud] SpringCloud_Config实战-01 (15:24) 7-42 [SpringCloud] SpringCloud_Config实战-02 (21:35)





