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 实现类,不同的实现类负责不同的资源访问逻辑。

相关推荐
代码的余温1 小时前
5种高效解决Maven依赖冲突的方法
java·maven
慕y2741 小时前
Java学习第十六部分——JUnit框架
java·开发语言·学习
paishishaba1 小时前
Maven
java·maven
张人玉2 小时前
C# 常量与变量
java·算法·c#
Java技术小馆2 小时前
GitDiagram如何让你的GitHub项目可视化
java·后端·面试
Codebee2 小时前
“自举开发“范式:OneCode如何用低代码重构自身工具链
java·人工智能·架构
Exclusive_Cat2 小时前
SpringMVC参数接收与数据返回详解
spring·mvc
程序无bug2 小时前
手写Spring框架
java·后端
程序无bug2 小时前
Spring 面向切面编程AOP 详细讲解
java·前端
全干engineer3 小时前
Spring Boot 实现主表+明细表 Excel 导出(EasyPOI 实战)
java·spring boot·后端·excel·easypoi·excel导出