Spring框架中的五种常用设计模式

1、单例模式

Spring 的 Bean 默认是单例模式,通过 Spring 容器管理 Bean 的⽣命周期,保证每个 Bean 只被 创建⼀次,并在整个应⽤程序中重用。

2.工厂模式

Spring 使⽤⼯⼚模式通过 BeanFactory 和 ApplicationContext 创建并管理 Bean 对象,从而实现对象的解耦。

3.代理模式

Spring AOP 基于动态代理技术,使⽤代理模式实现切⾯编程,在不改变原有设计(代码)的前提下对其进行增强的,它的底层采用的是代理模式实现的,所以要对原始对象进行增强,就需要对原始对象创建代理对象,在代理对象中的方法把通知内容加进去,就实现了增强,这就是我们所说的代理(Proxy)。

4.责任链模式

Spring 中的过滤器和拦截器使⽤了责任链模式,多个过滤器和拦截器按照⼀定顺序执⾏,每个 过滤器和拦截器可以拦截请求或者响应并做出相应的处理。

5.模板方法模式

Spring 中的 JdbcTemplate 使⽤了模板⽅法模式,将⼀些固定的流程封装在⽗类中,⼦类只需实现⼀些抽象⽅法即可。

相关推荐
大飞pkz1 小时前
【设计模式】责任链模式
开发语言·设计模式·c#·责任链模式
fly-phantomWing2 小时前
Maven的安装与配置的详细步骤
java·后端·maven·intellij-idea
大飞pkz3 小时前
【设计模式】六大基本原则
开发语言·设计模式·c#·六大原则
2401_841495645 小时前
【数据结构】红黑树的基本操作
java·数据结构·c++·python·算法·红黑树·二叉搜索树
学编程的小鬼5 小时前
SpringBoot 自动装配原理剖析
java·spring boot·后端
青草地溪水旁6 小时前
设计模式(C++)详解——迭代器模式(3)
c++·设计模式·迭代器模式
@@神农6 小时前
maven的概述以及在mac安装配置
java·macos·maven
杜子不疼.6 小时前
【C++】玩转模板:进阶之路
java·开发语言·c++
夜晚中的人海6 小时前
【C++】异常介绍
android·java·c++
charlie1145141917 小时前
精读C++20设计模式——行为型设计模式:迭代器模式
c++·学习·设计模式·迭代器模式·c++20