1.注解驱动的意义
1.1.什么是注解驱动

image.png
1.2.注解驱动的弊端

image.png
2.常用注解(重点)
2.1.Ioc
-
启动注解功能image.png
包路径配置的越详细越好
-
bean的定义image.png
-
bean的作用域image.png
-
bean的生命周期image.png
-
代码image.pngimage.pngimage.pngimage.pngimage.png
2.2.DI
-
注入非引用类型数据image.pngimage.png
-
注入引用类型属性image.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.png
2.3.第三方资源

image.png

image.png

image.png
2.4.properties文件

image.png

image.png
2.5.纯注解格式
目前xml文件还在,还在的意义是声明一个扫描包的配置
image.png

image.png

image.png
2.6.团队开发

image.png

image.png
3.bean加载控制
3.1.依赖加载
-
DependsOnimage.pngimage.pngimage.pngimage.png
-
orderimage.pngimage.png
-
lazyimage.png
-
应用场景image.png
4.整合第三方技术(重点)
4.1.综合案例(注解整合MyBatis)
-
环境搭建image.pngimage.pngimage.pngimage.png
-
分析:注解整合的实质就是把xml里的内容全部转换成注解image.pngimage.pngimage.png
-
功能实现image.pngimage.pngimage.png
4.2.综合案例改造(注解整合Junit)

image.png

image.png

image.png
5.IoC底层核心原理
5.1.IOC核心接口

image.png

image.png

image.png

image.png
5.2.bean加载过程解析
-
开发环境image.pngimage.pngimage.pngimage.png
-
组件扫描器image.pngimage.pngimage.png
-
自定义组件过滤器image.pngimage.pngimage.png
-
自定义导入器image.png写法一,直接写类名image.pngimage.png写法二,加载配置文件image.png写法三,配置文件包含多个类image.pngimage.png写法四,配置文件写一个dao所在的路径,借助工具类实现image.pngimage.pngimage.png
-
自定义注册器image.pngimage.pngimage.png
- 总结:组件扫描加过滤规则或者自定义过滤规则,控制哪些bean可以加载或者不可以加载@CompoentScan的属性excludeFilters;自定义导入器用于非spring系统改造spring,大量的bean没有加标记为bean的注解,统一在配置文件里写类的全路径或者类所在的path,用@Import导入自己写的自定义导入器;自定义注册器,彻底代替@CompoentScan这个注解的,用@Import导入自己写的自定义注册器
5.3.bean初始化过程解析
- 所有的bean在被创建之前和创建之后都会做一些相同的事,把这些事定义在BeanPostProcessor接口里
- 所有的bean在创建之前都会调用init方法,但是这个init方法不是必须要定义的,所以有个InitializingBean接口来去约束所有的bean初始化
-
工厂创建以后需要做的一些事
image.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.png
































































