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

1、单例模式

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

2.工厂模式

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

3.代理模式

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

4.责任链模式

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

5.模板方法模式

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

相关推荐
点云SLAM几秒前
C++(C++17/20)最佳工厂写法和SLAM应用综合示例
开发语言·c++·设计模式·c++实战·注册工厂模式·c++大工程系统
Pluchon3 分钟前
硅基计划4.0 算法 动态规划进阶
java·数据结构·算法·动态规划
会游泳的石头4 分钟前
Java 异步事务完成后的监听器:原理、实现与应用场景
java·开发语言·数据库
数智工坊4 分钟前
【操作系统-IO调度】
java·服务器·数据库
黎雁·泠崖7 分钟前
Java字符串进阶:StringBuilder+StringJoiner
java·开发语言
糖猫猫cc20 分钟前
Kite:Kotlin/Java 通用的全自动 ORM 框架
java·kotlin·springboot·orm
u01040583620 分钟前
Java微服务架构:设计模式与实践
java·微服务·架构
AI_567828 分钟前
测试用例“标准化”:TestRail实战技巧,从“用例编写”到“测试报告生成”
java·python·测试用例·testrail
Anastasiozzzz32 分钟前
LRU缓存是什么?&力扣相关题目
java·缓存·面试
茶本无香1 小时前
@Scheduled(cron = “0 */5 * * * ?“) 详解
java·定时任务·scheduled