这门课解决什么问题
对于Java后端开发者来说,Spring是绕不开的核心框架,但很多初学者容易陷入“只会写代码,不会用框架”的困境。本课程直指职场真实开发痛点:如何将原本散乱的代码结构,通过依赖倒置原则(DIP)和开闭原则(OCP)进行解耦?如何从零开始理解控制反转(IoC)和依赖注入(DI)这些抽象概念,并落地到实际项目中?课程从环境准备、Jar包下载到第一个程序编写,一步步带你跨越从Java SE到Spring框架的鸿沟,解决因概念模糊导致的开发效率低下问题。
适合什么基础,资料怎么配合练习
这门课不要求你已经是资深架构师,但建议你具备扎实的Java基础(如集合、多线程、IO流等),并且对面向对象编程有基本认知。资料包中的视频并非流水账,前几章的导读和环境准备是“地基”,建议先完整看完,不要跳过。资料里包含的日志框架配置(如Log4j)和Jar包说明,是实际开发中必须掌握的细节。配合资料中的源码,建议每学完一个章节,就在本地复现一遍,特别是“Spring的第一个入门程序”及其后续的细节讲解,必须亲手敲出来并观察日志输出,才能真正理解框架的运作机制。
学完能独立做什么
当你跟随老杜学完这套课程,你将不再需要依赖IDE的自动生成来创建Bean,而是能独立搭建基于Spring6的开发环境。你将掌握Spring 8大模块的划分,能够熟练使用XML或注解方式进行依赖注入,并能独立排查程序中的日志问题。学完之后,你可以独立开发简单的Spring应用,理解企业级开发中“面向接口编程”的精髓,为后续深入学习Spring Boot、MyBatis等主流技术栈打下坚实的底层逻辑基础。资料中的所有练习案例,都能直接作为你简历中的项目经验素材。
课程目录
1 Spring课程导读 (04:16) 2 环境准备 (05:37) 3 分析程序存在的问题 (08:50) 4 软件开发原则之OCP开闭原则 (07:01) 5 软件开发原则之DIP依赖倒置原则 (07:21) 6 控制反转IoC思想的理解 (09:20) 7 依赖注入DI (06:12) 8 Spring的8大模块 (11:39) 9 Spring框架的特点 (07:49) 10 Spring的下载 (08:25) 11 Spring的jar包 (05:33) 12 Spring的第一个入门程序 (25:43) 13 对Spring的第一个程序小细节1 (10:07) 14 对Spring的第一个程序小细节2 (14:19) 15 Spring6启用Log4j日志框架 (08:08) 16 控制反转和依赖注入的关系 (04:54) 17 依赖注入之set注入 (22:27) 18 依赖注入之构造注入 (11:50) 19 set注入专题之内部Bean和外部Bean (07:36) 20 set注入专题之注入简单类型 (04:53) 21 set注入专题之什么是简单类型 (03:49) 22 set注入专题之测试简单类型 (07:55) 23 set注入专题之简单类型Date (05:09) 24 set注入专题之简单类型注入的经典应用 (07:32) 25 set注入专题之级联属性赋值 (10:24) 26 set注入专题之注入数组 (06:41) 27 set注入专题之List和Set集合注入 (04:40) 28 set注入专题之Map和Properties注入 (06:09) 29 set注入专题之注入null和空字符串 (07:04) 30 set注入专题之注入特殊字符怎么办 (04:34) 31 基于p命名空间的注入 (06:01) 32 基于c命名空间的注入 (06:16) 33 util命名空间让配置复用 (09:43) 34 基于XML的自动装配byName (09:52) 35 基于XML的自动装配byType (08:37) 36 引入外部的属性配置文件 (07:17) 37 bean作用域之单例和多例 (10:05) 38 bean作用域之scope其它选项 (06:16) 39 bean作用域之自定义scope (08:09) 40 GoF23种设计模式概述 (10:19) 41 简单工厂模式详解 (15:18) 42 GoF23种设计模式之工厂方法模式 (13:52) 43 Bean的实例化之第一种方式 (06:33) 44 Bean的实例化之第二种方式 (07:43) 45 Bean的实例化之第三种方式 (08:33) 46 Bean的实例化之第四种方式 (11:44) 47 BeanFactory和FactoryBean的区别 (02:56) 48 FactoryBean实战之注入Date (12:31) 49 Bean的生命周期之五步 (12:26) 50 Bean的生命周期之七步 (07:38) 51 Bean的生命周期之十步 (16:20) 52 Bean的生命周期之不同作用域有不同的管理方式 (03:43) 53 自己new的对象纳入Spring容器管理 (03:23) 54 Bean的循环依赖之单例和set模式下 (09:12) 55 Bean的循环依赖之解决循环依赖的本质 (04:13) 56 Bean的循环依赖之多例和set模式下 (08:04) 57 Bean的循环依赖之构造注入模式下 (06:47) 58 Bean的循环依赖之源码分析 (17:41) 59 回顾反射机制之调用方法四要素 (06:06) 60 回顾反射机制之反射调用方法 (11:26) 61 回顾反射机制之SpringDI核心实现 (12:50) 62 手写Spring框架之准备工作 (09:24) 63 手写Spring框架之核心接口实现 (08:22) 64 手写Spring框架之实例化Bean (16:26) 65 手写Spring框架之获取所有set方法 (09:15) 66 手写Spring框架之给非简单类型属性赋值 (08:19) 67 手写Spring框架之给简单类型属性赋值 (11:36) 68 手写Spring框架之测试自己的框架 (13:13) 69 Spring IoC注解之回顾注解小细节 (13:43) 70 Spring IoC注解之反射注解 (06:14) 71 Spring IoC注解之组件扫描原理 (14:41) 72 Spring IoC注解之声明Bean的注解 (06:09) 73 Spring IoC注解之Spring注解的使用 (13:26) 74 Spring IoC注解之解决多个包扫描问题 (03:09) 75 Spring IoC注解之选择性实例化Bean (11:19) 76 Spring IoC注解之@Value注解 (14:49) 77 Spring IoC注解之@Autowired和@Quali (15:51) 78 Spring IoC注解之@Autowired注解可以出现的 (04:15) 79 Spring IoC注解之@Resource注解 (17:28) 80 Spring IoC注解之全注解开发 (04:07) 81 JdbcTemplate之环境准备 (14:02) 82 JdbcTemplate之新增 (02:28) 83 JdbcTemplate之修改和删除 (02:16) 84 JdbcTemplate之查一个对象 (02:10) 85 JdbcTemplate之查多个对象 (01:34) 86 JdbcTemplate之查一个值 (02:53) 87 JdbcTemplate之批量添加 (03:54) 88 JdbcTemplate之批量更新 (02:43) 89 JdbcTemplate之批量删除 (01:47) 90 JdbcTemplate之回调函数 (04:38) 91 JdbcTemplate之整合德鲁伊连接池 (04:47) 92 GoF代理模式之对代理模式的深入理解 (20:44) 93 GoF代理模式之静态代理前序 (15:47) 94 GoF代理模式之静态代理代码实现 (19:02) 95 GoF代理模式之动态代理概述 (06:22) 96 GoF代理模式之JDK动态代理的两个参数 (13:16) 97 GoF代理模式之JDK动态代理的调用处理器 (06:00) 98 GoF代理模式之JDK动态代理invoke方法 (08:21) 99 GoF代理模式之invoke方法的三个参数 (06:40) 100 GoF代理模式之invoke方法的返回值 (05:16) 101 GoF代理模式之JDK动态代理工具类封装 (04:29) 102 GoF代理模式之CGLIB动态代理 (15:48) 103 面向切面编程之对面向切面编程的深入理解 (18:20) 104 面向切面编程之七大术语 (14:10) 105 面向切面编程之切点表达式 (07:51) 106 Spring AOP实现之概述 (05:13) 107 Spring AOP基于注解之准备工作 (05:05) 108 Spring AOP基于注解之实现步骤 (15:04) 109 Spring AOP基于注解之切点表达式 (03:59) 110 Spring AOP基于注解之所有通知类型 (10:05) 111 Spring AOP基于注解之切面顺序 (03:29) 112 Spring AOP基于注解之通用切点 (03:07) 113 Spring AOP基于注解之连接点 (03:46) 114 Spring AOP基于注解之全注解开发 (02:58) 115 Spring AOP基于XML方式的实现 (09:18) 116 Spring AOP编程式事务解决方案 (14:13) 117 Spring AOP安全日志解决方案 (09:18) 118 Spring事务之事务概述 (08:24) 119 Spring事务之引入事务场景 (14:43) 120 Spring事务之演示转账失败 (08:30) 121 Spring事务之事务管理器接口 (05:19) 122 Spring事务之注解方式 (05:30) 123 Spring事务之传播行为 (10:38) 124 Spring事务之搭建传播行为测试程序 (16:34) 125 Spring事务之传播行为REQUIRED (03:50) 126 Spring事务之传播行为REQUIRES_NEW (04:59) 127 Spring事务之事务隔离级别的三大读问题 (10:55) 128 Spring事务之事务隔离级别 (03:24) 129 Spring事务之测试事务隔离级别 (11:41) 130 Spring事务之事务超时避免踩坑 (07:02) 131 Spring事务之只读事务启动优化策略 (03:29) 132 Spring事务之设置遇到哪些异常时回滚 (04:18) 133 Spring事务之设置遇到哪些异常不回滚 (02:22) 134 Spring事务之全注解式开发 (11:42) 135 Spring事务之声明式事务XML实现方式 (20:08) 136 Spring框架对JUnit4的支持 (06:52) 137 Spring框架对JUnit5的支持 (03:09) 138 Spring框架集成MyBatis的实现步骤 (07:35) 139 Spring框架集成MyBatis数据库表和引入依赖 (07:22) 140 Spring框架集成MyBatis准备包和pojo (01:31) 141 Spring框架集成MyBatis实现Mapper接口和配置 (06:15) 142 Spring框架集成MyBatis编写service接口和实 (05:09) 143 Spring框架集成MyBatis编写mybatis核心配置 (02:26) 144 Spring框架集成MyBatis编写Spring配置文件 (05:43) 145 Spring框架集成MyBatis测试程序 (02:58) 146 在Spring主配置文件中引入子配置文件 (02:35) 147 Spring框架的八大设计模式 (04:16) 148 Spring框架的八大设计模式 (09:56)




