Spring 框架中应用了多种设计模式,以下为您列举一些常见的:
工厂模式
Spring 的 BeanFactory 和 ApplicationContext 都是工厂模式的体现,用于创建和管理对象(Bean)。
单例模式
在 Spring 中,默认情况下,Bean 都是单例的,以减少对象创建和销毁的开销。
代理模式
Spring AOP(面向切面编程)基于动态代理实现,如 JDK 动态代理和 CGLIB 代理。
模板方法模式
在 JdbcTemplate 等类中有所应用,定义了数据访问的基本流程,具体细节由子类实现。
观察者模式
ApplicationContext 中的事件发布和监听机制使用了观察者模式。
适配器模式
例如,HandlerAdapter 用于适配不同类型的处理器。
装饰器模式
增强已有对象的功能。
这些设计模式的应用使得 Spring 框架具有高度的灵活性、可扩展性和可维护性。