常用设计模式:工厂模式、单例模式、代理模式
spring ioc核心的设计模式的思想,就是工厂模式。
spring本身就是一个工厂,把所有的bean实例都给放在了spring容器里(大工厂),如果你要使用bean,就找spring容器就可以了,你自己不用创建对象了
1.工厂模式
将对象的创建过程放在一个Factory工厂类里,如果要使用的话,则通过该工厂类来直接获取
public class MyController{
private MyService myService = MyServiceFactory.getMyService();
}
public class MyServiceFactory{
public static MyService getMyService(){
return new MyServiceImpl();
}
}
2.单例模式
spring默认每个bean都是单例模式,确保一个类在系统运行期间只有一个实例对象,只有一个bean
DCL单例模式
public class MyController{
private static volatile MyService myService;
public static MyService getInstance(){
if(myService == null){
synchronized(MyService.class){
if(myService == null){
myService = new MyService();
}
}
}
return myService;
}
}
3.代理模式(有点含金量)
Spring中的AOP
对一些类的方法切入一些增强的代码,会创建一些动态代理的对象。
当访问目标对象时,先结果动态代理的对象,做一些增强的代码后,再调用目标对象

本文介绍了Spring框架中三种常用的设计模式:工厂模式用于bean的创建,单例模式确保每个bean的唯一性,而代理模式则体现在Spring的AOP功能,实现方法增强。通过理解这些模式,可以更好地掌握Spring的核心思想。
5610

被折叠的 条评论
为什么被折叠?



