每日一题-spring中的设计模式

1、 spring中的设计模式

工厂模式 (Factory Pattern):Spring使用工厂模式来创建和管理对象。通过ApplicationContex t,Spring可以作为一个工厂,负责创建、初始化和返回应用程序所需的对象
单例模式 (Singleton Pattern):Spring默认创建的bean都是单例的,即在整个Spring IoC容器中,一个bean只会有一个实例。这有助于减少内存占用和简化对象之间的依赖关系
代理模式 (Proxy Pattern):Spring的AOP(面向切面编程)功能使用了代理模式。当一个对象需要被增强时,Spring会创建一个代理对象来包装原对象,并在调用原对象的方法时,插入额外的逻辑(如事务管理、安全检查等)
模板方法模式 (Template Method Pattern):Spring的JdbcTemplate、RedisTemplate等模板类都体现了模板方法模式。这些模板类提供了固定的方法逻辑,但允许用户自定义部分逻辑(如SQL语句或Redis命令)。
观察者模式 (Observer Pattern):Spring的事件处理机制使用了观察者模式 。当一个事件发生时,所有注册为该事件监听器的对象都会收到通知并可以执行相应的操作。
策略模式 (Strategy Pattern):Spring的ResourceLoader接口及其实现类(如ClassPathResource、FileSystemResource等)体现了策略模式。不同的资源加载策略可以通过不同的实现类来实现,并在运行时根据需要进行选择。
装饰器模式 (Decorator Pattern):虽然Spring本身没有直接使用装饰器模式,但装饰器模式的思想在Spring中有所体现。例如,Spring允许我们通过配置来动态地为bean添加额外的行为或属性,类似于装饰器模式中的动态增加功能。
适配器模式 (Adapter Pattern):在Spring中,适配器模式通常用于将不兼容的接口转换为兼容的接口。例如,Spring的HandlerAdapter接口用于将不同的请求处理方法适配为统一的调用方式。

待补充完善。

相关推荐
独自破碎E17 分钟前
LeetCode 381: O(1) 时间插入、删除和获取随机元素 - 允许重复
java·算法·leetcode
程语有云19 分钟前
生产事故-Caffeine缓存误用之临下班的救赎
java·缓存·caffeine·阻塞·log·生产事故
Miraitowa_cheems42 分钟前
LeetCode算法日记 - Day 81: 最大子数组和
java·数据结构·算法·leetcode·决策树·职场和发展·深度优先
CodeCraft Studio1 小时前
国产化Word处理控件Spire.Doc教程:用Java实现TXT文本与Word互转的完整教程
java·c#·word·spire.doc·word文档转换·txt转word·word转txt
徐子童1 小时前
数据结构---优先级队列(堆)
java·数据结构·面试题·优先级队列··topk问题
滑水滑成滑头1 小时前
**标题:发散创新:智能交通系统的深度探究与实现**摘要:本文将详细
java·人工智能·python
siriuuus1 小时前
Maven 核心概念及生命周期
java·maven
闭着眼睛学算法1 小时前
【双机位A卷】华为OD笔试之【哈希表】双机位A-跳房子I【Py/Java/C++/C/JS/Go六种语言】【欧弟算法】全网注释最详细分类最全的华子OD真题题解
java·c语言·c++·python·算法·华为od·散列表
孔明兴汉1 小时前
Cursor MCP 第一章-第一节-MCP协议简介.md
java·ai
信仰_2739932432 小时前
枚举类Enum反编译后效果
java·开发语言