每日一题-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接口用于将不同的请求处理方法适配为统一的调用方式。

待补充完善。

相关推荐
.鸣8 小时前
set和map
java·学习
ha_lydms8 小时前
5、Spark函数_s/t
java·大数据·python·spark·数据处理·maxcompute·spark 函数
黄河滴滴9 小时前
java系统变卡变慢的原因是什么?从oom的角度分析
java·开发语言
侠客行03179 小时前
Mybatis二级缓存实现详解
java·mybatis·源码阅读
老华带你飞9 小时前
农产品销售管理|基于java + vue农产品销售管理系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot·后端
Edward1111111110 小时前
tomcat_servlet
java·servlet·tomcat
短剑重铸之日10 小时前
SpringBoot声明式事务的源码解析
java·后端·spring·springboot
李白的粉10 小时前
基于springboot的银行客户管理系统(全套)
java·spring boot·毕业设计·课程设计·源代码·银行客户管理系统
JIngJaneIL10 小时前
基于springboot + vue房屋租赁管理系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot·后端
努力的小南10 小时前
Java字节码文件常量池索引两个问题
java·常量池·字节码文件·黑马jvm字节码文件常量池索引