一、简单工厂
spring的BeanFactory就是一个简单工厂模式的体现,根据传入一个唯一标识额Bean对象,但是否时唉传入参数后创建还是传入参数钱前创建要根据情况而定。
二、工厂方法
实现了FactoryBean接口的bean是一类叫做factory的bean。其特点是,spring会在使用getBean()调用获得该bean时,会自动调用该bean的getobject()方法,所以返回的不是factory这个bean,而是这个bean.getojbect()方法的返回值。
三、单例模式
保证一个类仅有一个实例,并提供一个访问它的全局访问点
spring对单例的实现: spring中的单例模式完成了后半句话,即提供了全局的访问点BeanFactory。但没有从构造器级别去控制单例,这是因为spring管理的是任意的java对象。
四、适配器模式
spring定义了一个适配接口,每一个Controller有一种对应的会配器实现类,让适配器代替contro11er执行相应的方法。这样在扩展Control1er时,只需要增加一个适配 器类就完成了SpringMVC的扩展了。
五、装饰器模式
动态地给一个对象添加一 些额外的职责。就增加功能来说, Decorator模式相比生成子类更为灵活。
Spring中用到的包装器模式在类名上有两种表现:一种是类名中含有Wrapper,另一种是类名中含有Decorator.
六、动态代理
Spring的AOP就是这样植入切面的。
七、观察者模式
spring的事件驱动模型使用的是观察者模式,Spring中observer 模式常用的地方是1istener的实现。
八、策略模式
Spring框架的资源访间Resource接口。该接口提供了更强的资源访问能力,Spring 框架本身大量使用了Resource接口来访问底层资源。