写点什么

spring 用到的设计模式

作者:周杰伦本人
  • 2022-10-21
    贵州
  • 本文字数:670 字

    阅读完需:约 1 分钟

spring 用到的设计模式

spring 是我们 java 开发必须要会的技能,它作为一个核心框架用到了很多的设计模式,今天我们就学习一下吧

工厂模式

工厂模式是根据不同的条件生成同一个接口下不同的类的实例,Spring 的 FactoryBean 就是用到工厂模式

模板方法模式

模板方法模式就是抽取出公共的部分,封装不变的,扩展改变的,对于类的实例化延迟到它的子类中,像 spring 的 AbstractPlatformTransactionManager 事务管理器就是模板方法模式的体现,它是抽象的事务管理,具体的事务管理器实现类有 DataSourceTransactionManager、HibernateTransactionManager 等

代理模式

代理模式不用多说了,spring 的 aop 就是用的代理模式,利用动态代理生成代理对象,执行方法。

策略模式

策略模式在 spring 中当然也有用到,比如 Spring 的 AOP 可以使用 JDK 动态代理和 CGLIB 动态代理

单例模式

这个就不用细说了,Spring 中 bean 的创建是用到单例模式,确保全局只有一个实例

观察者模式

Spring 的事件驱动模型就是观察者模式的体现,ApplicationEvent、ApplicationListener,通过 ApplicationListener 接口实现它的方法完成对时间的监听

适配器模式

适配器模式遵循的是开闭原则,也就是对扩展开放,对修改关闭。在 spring 的 AOP 的增强和通知功能中用到了适配器,根据不同的 AdvisorAdapter 选择不同的 MethodInterceptor 来进行适配

装饰者模式

spring 的 TransactionAwareCacheDecorator 就是基于 Cache 接口进行包装,让缓存加入对事务的处理,在事务提交回滚等操作处理缓存数据。

总结

spring 用到的设计模式本篇简单罗列介绍了一下,除此之外可能还有其他的设计模式,spring 有很多值得我们学习的地方,一起研究 spring 吧

发布于: 刚刚阅读数: 3
用户头像

还未添加个人签名 2020-02-29 加入

公众号《盼盼小课堂》,多平台优质博主

评论

发布
暂无评论
spring用到的设计模式_10月月更_周杰伦本人_InfoQ写作社区