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

1、单例模式

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

2.工厂模式

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

3.代理模式

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

4.责任链模式

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

5.模板方法模式

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

相关推荐
海特伟业6 分钟前
隧道调频广播覆盖-隧道调频广播无线覆盖系统建设要点、难点分析与解决应对
运维·设计模式
冬夜戏雪12 分钟前
实习面经摘录(六)
java
sg_knight13 分钟前
设计模式实战:享元模式(Flyweight)
python·设计模式·享元模式·flyweight
把你毕设抢过来15 分钟前
基于Spring Boot的演唱会购票系统的设计与实现(源码+文档)
java·spring boot·后端
⑩-16 分钟前
Redis内存淘汰策略?如何处理大Key?
java·数据库·redis
淡泊if18 分钟前
eBPF 实战:一次诡异的 Nginx 高延迟,我用 5 分钟在内核里找到了真凶
java·运维·nginx·微服务·ebpf
李白的粉27 分钟前
基于springboot的桂林旅游景点导游平台
java·spring boot·毕业设计·课程设计·源代码·桂林旅游景点导游平台
毕设源码-赖学姐1 小时前
【开题答辩全过程】以 花卉交易系统为例,包含答辩的问题和答案
java
smileNicky1 小时前
Spring AI系列之对话记忆与工具调用指南
人工智能·python·spring
weixin_704266051 小时前
Spring整合MyBatis(一)
java·spring·mybatis