Spring 中经典的 9 种设计模式
Spring框架中使用了很多设计模式,以下是其中的一些:
- 工厂设计模式:Spring使用工厂模式来创建对象。例如,
BeanFactory
是工厂模式的实现,用来统一管理对象的创建。 - 单例设计模式:Spring中的Bean默认都是单例的,这是通过单例模式实现的。
- 代理设计模式:Spring AOP使用代理模式,为对象提供额外的服务。例如,Spring的
ProxyFactory
类。 - 模板方法模式:Spring的
JdbcTemplate
、HibernateTemplate
等模板类,使用模板方法模式封装了复用的逻辑。 - 观察者模式:Spring事件驱动模型就是观察者模式的实现,例如
ApplicationListener
。 - 策略模式:Spring中的
Resource
接口和各种Resource
实现就是策略模式的应用,例如ClassPathResource
、FileSystemResource
等。 - 装饰器模式:Spring的各种数据绑定、格式化等类使用装饰器模式。
- 适配器模式:Spring AOP的
MethodBeforeAdvice
、AfterReturningAdvice
等都是适配器模式的应用。 - 组合模式:Spring使用组合模式来构建Bean定义之间的层次结构。例如,
ChildBeanDefinition
可以嵌套在RootBeanDefinition
中。
这些模式在Spring的源代码中无处不在,有助于理解Spring框架的设计和实现。
评论已关闭