spring用到的设计模式

举报
周杰伦本人 发表于 2022/07/27 13:42:18 2022/07/27
【摘要】 spring用到的设计模式 工厂模式 模板方法模式 代理模式 策略模式 单例模式 观察者模式 适配器模式 装饰者模式 总结 spring用到的设计模式spring是我们java开发必须要会的技能,它作为一个核心框架用到了很多的设计模式,今天我们就学习一下吧 工厂模式工厂模式是根据不同的条件生成同一个接口下不同的类的实例,Spring的FactoryBean就是用到工厂模式 模板方法模式模板...

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吧

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。