Spring框架中的8种设计模式
前言
Spring框架中的8种设计模式分别是:1、简单工厂。2、工厂方法。3、单例模式。4、适配器模
式。5、装饰器模式。6、代理模式。7、观察者模式。8、策略模式.
1、简单工厂
Spring中的BeanFactory就是简单工厂模式的体现,根据传入一个唯一的标识来获得Bean对象,
但是否在传入参数后创建还是传入参数前创建这个要根据具体情况来定。
2、工厂方法
实现了FactoryBean接口的bean是一类叫做factory的bean。其特点是Spring会在使用getBean()调
用获得该bean时,会自动调用该bean的getObject()方法,所以返回的不是factory这个bean,而是
这个bean.getOjbect()方法的返回值。
3、单例模式
Spring依赖注入Bean实例默认是单例的。
Spring的依赖注入(包括lazy-init方式)都是发生在AbstractBeanFactory的getBean里。getBean的
doGetBean方法调用getSingleton进行bean的创建。
4、适配器模式
SpringMVC中的适配器HandlerAdatper。
HandlerAdatper使得Handler的扩展变得容易,只需要增加一个新的Handler和一个对应的
HandlerAdapter。
因此Spring定义了一个适配接口,使得每一种Controller有一种对应的适配器实现类,让适配器代
替controller执行相应的方法。这样在扩展Controller时,只需要增加一个适配器类就完成了
SpringMVC的扩展了。
5、装饰器模式
Spring中用到的包装器模式在类名上有两种表现:
一种是类名中含有Wrapper,另一种是类名中含有Decorator。
动态地给一个对象添加一些额外的职责。
就增加功能来说,Decorator模式相比生成子类更为灵活。
6、代理模式
Spring中AOP的底层,就是动态代理模式的实现。
7、观察者模式
Spring 基于观察者模式,实现了自身的事件机制也就是事件驱动模型,事件驱动模型通常也被理
解成观察者或者发布/订阅模型。
8、策略模式
Spring框架的资源访问Resource接口。该接口提供了更强的资源访问能力,Spring 框架本身大量
使用了Resource 接口来访问底层资源。
Rsource 接口是具体资源访问策略的抽象,也是所有资源访问类所实现的接口。
Resource 接口本身没有提供访问任何底层资源的实现逻辑,针对不同的底层资源,Spring 将会提
供不同的Resource 实现类,不同的实现类负责不同的资源访问逻辑。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!