目录
项目描述:
基本演示
提取标记类
IOC容器的装载
IOC容器的操作
DI依赖注入
Aspect排序
AOP
MVC
功能实现讲解
-
项目描述:
- 为了更好地学习 Spring 的核心,参考 Spring 源码实现的一个简易框架
- 当前已实现 IOC,DI依赖注入,AOP,MVC 等功能
- 内容:
- 采用大量的设计模式使代码简洁稳定,包括但不限于:
- 工厂模式实现 BeanContainer (BeanFactory)
- 单例模式注册 Bean 对象
- 代理模式实现 AOP 切面编程核心
- 观察者模式拆分 模型与视图
- 责任链模式实现 MVC 执行注册的请求处理器
- 采用大量的设计模式使代码简洁稳定,包括但不限于:
-
基本演示
-
提取标记类
-
IOC容器的装载
-
IOC容器的操作
- 对容器的操作都是基于容器被加载之后,所以测试时要指定顺序
- 用instanceof来判断controller实例是否是MainPageController创建出来的
- dispatcherServlet没有加注解没有被bean容器管理,所以使用bean容器获得的实例对象应该为null
-
DI依赖注入
- 创建同样的目录
- 1、获取容器实例
- 2、指定范围将被注解标记的类交给容器管理加载
- 3、先判断容器是否被加载,加载后就可以获得bean实例
- 4、判断是否是MainPageController创建的实例
- 5、给controller设置get方法获得私有成员变量
- 6、因为没调用doIoc,所以成员变量的实例应该为null
- 7、调用doIoc,进行依赖注入
-
Aspect排序
-
AOP
- 通知(Advice)1 & 切面(Aspect)
- 通知(Advice)2 & 切面(Aspect)
- 目标对象(Target)
-
MVC
-
功能实现讲解
- 点击->IOC容器&依赖注入
- 点击->AOP
- 点击->MVC