👹 涉及到的设计模式
2022年6月20日
- frame
👹 涉及到的设计模式
1. 单例模式
Spring 中的 Bean 默认都是单例的
设置 bean 的作用域
@Scope(value = ConfigurableBeanFactory.SCOPE_PROTOTYPE)
singleton
- 唯一 bean 实例,Spring 中的 bean 默认都是单例的
prototype
- 每次请求都会创建一个新的 bean 实例
request
- 每一次 HTTP 请求都会产生一个新的 bean
session
- 每一次来自新 session 的 HTTP 请求都会产生一个新的 bean
global-session
- 全局 session 作用域,Spring5 已经没有了
2. 工厂模式
- Spring 使用工厂模式通过
BeanFactory
、ApplicationContext
创建 bean 对象
3. 代理模式
- Spring
AOP
、事务
功能的实现
4. 模板方法
jdbcTemplate
、RedisTemplate
等
5. 观察者模式
- Spring 事件驱动模型就是观察者模式很经典的一个应用
6. 适配器模式
- Spring MVC 中有个 HandlerAdapter 将对象进行适配