Spring设计理念及设计模式分析

Spring设计理念及设计模式分析

spring骨骼架构:context,bean,core

把对象之间的依赖用配置文件来管理,也就是依赖注入的机制,而这个注入关系在一个IOC的容器来管理,IOC中就是很多被Bean包裹的对象,spring正是通过把对象包装在bean中从而达到管理这些对象。

如果Bean是演员,context就是舞台背景,core就是道具
context:就是一个Bean关系的集合,就是发现每个bean的关系,为他们建立并维护好这种关系,就是一个Bean关系的集合,这个关系的集合又叫IOC容器,一旦建立这个容器,spring就可以为你工作了
core:就是一系列工具,发现,建立和维护每个bean之间的关系。定义了资源的访问方式,这种把所有资源抽象成一个接口的方式很值得学习。

1.IOC容器如何工作?
创建beanfactory工厂:1)构建beanfactory2)注册可能感兴趣的事件3)创建bean实例对象4)触发被监听的事件

如何创建bean的实例并构建bean关系网:有一个非常重要的bean-factorybean,spring有一大半扩展功能与这相关,这是个特殊的bean,他是个工厂bean,可以产出bean的bean。

spring核心:如何创建Bean的实例以及如何构建Bean实例对象之间的关联。

IOC容器的扩展点:BeanFactory就是那个造球模的工具,球模就是Bean,BeanFactoryPostProcessor在球模在造出来的时候可有机会对其适当的修改,而BeanPostProcesssor可以让你对球模造出来的球做出适当修正,最后还有一个神奇的FactoryBean是一个神奇的球模,由你来确定它的形状。

IOC容器如何为我所用:AOP的实现就是spring本身实现了扩展点达到了它想要的特性功能,ApplicationContext.xml就是IOC的默认配置文件,Spring的所有特性功能全部都是基于IOC容器工作的。

Spring的AOP原理:首先必须了解动态代理,因为AOP就是在动态代理的基础上实现的

代理的目的是调用目标方法可以转而执行InvocationHandler类的invoke方法,所以如何在InvocationHandler上做文章就是Spring实现AOP的关键所在。

动态代理根本不需要知道代理类的名字,静态需要

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值