当前位置: 首页 > news >正文

2.Spring中用到的设计模式

  Spring框架中使用了多种设计模式来构建其强大且灵活的功能,这里举例说明Spring中的一些功能使用到的设计模式。

  1. 工厂模式:Spring容器本质是一个大工厂,使用工厂模式通过BeanFactory和ApplicationContext这两个核心接口来创建和管理bean对象。
  2. 代理模式 :Spring AOP(面向切面编程) 功能就是通过代理模式来实现的,分为动态代理和
    静态代理。
  3. 单例模式 :在Spring中,Bean的默认作用域就是单例(singleton)。
  4. 模板模式 :Spring框架中提供了许多以Template结尾的模板类,比如JdbcTemplate(简化JDBC操作的模板类)、RedisTemplate(简化Redis的数据访问操作的模板类)就使用到了模板模式。
  5. 观察者模式 :Spring的事件机制就应用了观察者模式,一个事件可以有多个监听器(观察者)。当某个事件(被观察者)被触发时,所有订阅了该事件的监听器(观察者)都会收到通知。
  6. 适配器模式 :Spring MVC中的一个关键组件HandlerAdapter,就应用了适配器模式,将不同类型的处理器(Controller、HttpRequestHandler或Servlet等)适配到统一的请求处理流程中,使得Spring MVC可以通过一个统一的接口来处理来自不同处理器的请求。
  7. 策略模式:Spring中的Resource接口就使用到了策略模式,它的不同实现类会根据不同的策略去访问资源。

http://www.lryc.cn/news/354697.html

相关文章:

  • .NET调用阿里云人脸核身服务端 (ExecuteServerSideVerification)简易流程保姆级教学
  • [大师C语言(第十二篇)]C语言堆排序技术详解
  • Activity启动流程要点
  • lua 计算第几周
  • 负载均衡策略
  • 海外网红营销新趋势:“快闪式”营销如何迅速提升品牌曝光度
  • 速看!打造专属数字化能力模型的七大关键!
  • 青蛙跳台阶问题
  • linux日常运维2
  • flink cdc mysql整理与总结
  • 【三维重建】ePnP
  • C++进阶之路:何为运算符重载、赋值运算符重载与前后置++重载(类与对象_中篇)
  • 8、python基础知识图谱
  • 智慧校园建设规划方案
  • 【深度学习实战—8】:基于MediaPipe的人脸检测
  • OSCP学习,布置你的Kali Linux
  • PWA离线优先策略:提升用户体验的关键步骤
  • 网页提示“非私密连接”是为什么?
  • [自动驾驶技术]-8 Tesla自动驾驶方案之硬件(AI Day 2022)
  • 人力资源管理信息化系统如何支持企业开展管理诊断?
  • Cohere继Command-R+之后发布大模型Aya-23,性能超越 Gemma、Mistral 等,支持中文
  • 身为UI设计老鸟,不学点3D,好像要被潮流抛弃啦,卷起来吧。
  • 线代-向量eg3.1 3.2 3.4
  • 【C语言】实现贪吃蛇--项目实践(超详细)
  • Elasticsearch 分析器的高级用法一(同义词,高亮搜索)
  • Python 开心消消乐
  • mysql - 索引基本知识梳理
  • Nginx SSL/TLS配置:搭建安全的HTTPS网站
  • echarts 折线图流光效果偏移或不显示
  • Redis数据类型(上篇)