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

1、单例模式

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

2.工厂模式

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

3.代理模式

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

4.责任链模式

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

5.模板方法模式

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

相关推荐
Detachym3 小时前
InsightFlow 服务配置优化与部署实践
java·spring boot·tomcat·maven·状态模式·jar
y = xⁿ3 小时前
【LeetCodehot100】T23:合并k个升序链表
java·数据结构·链表
流水武qin3 小时前
SpringAI多模态的基本使用
java·spring boot·spring·ai
共享家95273 小时前
Java入门(多态)
java·开发语言
毕设源码-赖学姐3 小时前
【开题答辩全过程】以 基于Java的婚礼策划平台的设计与实现为例,包含答辩的问题和答案
java·开发语言
吾诺3 小时前
Spring Boot--@PathVariable、@RequestParam、@RequestBody
java·spring boot·后端
luanma1509804 小时前
Spring 框架——@Retryable 注解与 @Recover 注解
java·前端·spring
阿Y加油吧4 小时前
力扣打卡——day01
java·算法·leetcode
码路飞4 小时前
Java 25 发了但更让我兴奋的是这个:Spring AI 让 Java 调大模型终于不用手写 HTTP 了
java·人工智能·spring
sinat_255487814 小时前
transient 修饰符·学习笔记
java·开发语言·spring