Spring 框架中主要应用了以下设计模式:
- 工厂设计模式 : 通过
BeanFactory、ApplicationContext创建 bean 对象。 - 代理设计模式 : 用于实现 Spring AOP 功能。
- 单例设计模式 : Spring 中的 Bean 默认都是单例的。
- 模板方法模式 : 例如
jdbcTemplate、hibernateTemplate等以 Template 结尾的对数据库操作的类。 - 包装器设计模式 : 用于动态切换不同的数据源。
- 观察者模式 : Spring 事件驱动模型的经典应用。
- 适配器模式 : 用于适配 AOP 的增强或通知,以及 Spring MVC 中的适配器模式适配
Controller。