Spring MVC BOOT 中体现的设计模式
Spring:
创建型:
单例模式:Bean默认就是单例的,是饿汉模式的,但是可以通过@Lazy设置为懒汉
工厂模式:可自定义FactroyBean,实现Bean自己的生产工厂
结构型:
代理模式:AOP就是典型的动态代理,有jdk和cglib两种实现 默认cglib
组合模式:每个SpringBean其实就像树一样组合在一起
行为型:
策略模式:其实Bean的生成策略本身就是种策略模式
观察者模式:Spring自带发布订阅
SpringMVC:
责任链模式:拦截链 AOP
适配器模式:Controller与DispatcherServlet
SpringBoot:
模板方法模式:自动配置类就是模板方法模式,AI说整个流程的骨架是不变的,即根据Conditional判断条件,然后创建Bean并注册到注册中心这些是不变的,体现的是模板方案思想吧