Spring中的⼋⼤设计模式
⼀、简单⼯⼚模式
⼜叫做静态⼯⼚⽅法(StaticFactory Method)模式,但不属于23种GOF设计模式之⼀。
简单⼯⼚模式的实质是由⼀个⼯⼚类根据传⼊的参数,动态决定应该创建哪⼀个产品类。
spring中的BeanFactory就是简单⼯⼚模式的体现,根据传⼊⼀个唯⼀的标识来获得bean对象,但是否是在传⼊参数后创建还是传⼊参数前创建这个要根据具体情况来定。
⼆、⼯⼚⽅法模式
通常由应⽤程序直接使⽤new创建新的对象,为了将对象的创建和使⽤相分离,采⽤⼯⼚模式,即应⽤程序将对象的创建及初始化职责交给⼯⼚对象。
spring boot原理和设计模式 ⼀般情况下,应⽤程序有⾃⼰的⼯⼚对象来创建bean.如果将应⽤程序⾃⼰的⼯⼚对象交给Spring管理,那么Spring管理的就不是普通的bean,⽽是⼯⼚Bean。
三、单例模式
保证⼀个类仅有⼀个实例,并提供⼀个访问它的全局访问点。
spring中的单例模式完成了后半句话,即提供了全局的访问点BeanFactory。但没有从构造器级别去控制单例,这是因为spring管理的是是任意的java对象。
四、适配器模式
在Spring的Aop中,使⽤的Advice(通知)来增强被代理类的功能。Spring实现这⼀AOP功能的原理就使⽤代理模式对类进⾏⽅法级别的切⾯增强,即,⽣成被代理类的代理类,并在代理类的⽅法前,设置,通过执⾏重的内容增强了代理⽅法的功能,实现的⾯向切⾯编程。
五、包装器模式
spring中⽤到的包装器模式在类名上有两种表现:⼀种是类名中含有Wrapper,另⼀种是类名中含有Decorator。基本上都是动态地给⼀个对象添加⼀些额外的职责。
六、代理模式
为其他对象提供⼀种代理以控制对这个对象的访问。从结构上来看和Decorator模式类似,但Proxy是控制,更像是⼀种对功能的限制,⽽Decorator是增加职责。
七、观察者模式
定义对象间的⼀种⼀对多的依赖关系,当⼀个对象的状态发⽣改变时,所有依赖于它的对象都得到通知并被⾃动更新。
⼋、策略模式
定义⼀系列的算法,把它们⼀个个封装起来,并且使它们可相互替换。本模式使得算法可独⽴于使⽤它的客户⽽变化。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论