Spring IoC底层原理

来源:互联网 发布:ubuntu 32位iso下载 编辑:程序博客网 时间:2024/05/17 23:22

-------------------siwuxie095

  

  

  

  

  

  

  

  

Spring IoC 底层原理

  

  

1、IoC 即 Inversion of Control,控制反转,把对象的创建

交给 Spring 进行管理

  

  

  

2、IoC 容器管理 Bean 的方式:

  

1)基于配置文件的方式

  

2)基于注解的方式

  

  

  

3、IoC 底层原理所使用的技术:

  

1XML 配置文件

  

2dom4j 解析 XML

  

3工厂模式

  

5反射

  

  

  

4、原始方案,耦合度太高

  

  

  

public class UserService{

  

publicvoid add(){}

  

}

  

  

public class UserServlet{

  

UserService userService=new UserService();

 

userService.add();

  

}

  

  

  

5、使用工厂模式解耦合,但Servlet 和工厂类又有了新的耦合,

所以它并不是最终的解决方案

  

  

  

public class UserService{

  

publicvoid add(){}

  

}

  

  

public class UserServlet{

  

UserService userService=UserFactory.getService();

 

userService.add();

  

}

  

  

public class UserFactory{

  

public static UserService getService(){

  

return new UserService();

  

}

  

}

  

  

  

6、使用Spring IoC 解耦合,目前较优的解决方案

  

  

  

第一步:创建 XML 配置文件,配置要创建对象的类

  

<bean id="userService"class="com.siwuxie095.UserService" />

  

 

第二步:创建工厂类,使用 dom4j 解析 XML配置文件+反射

 

public class UserFactory{

 

public static UserService getService(){

 

// 1、使用 dom4j 解析 XML配置文件:

//根据 id属性值得到 class属性值

String classValue="class属性值";

 

// 2、使用反射创建类对象

Class clazz=Class.forName(classValue);

 

UserService userService=clazz.newInstance();

 

return userService;

 

}

 

}

  

  

  

  

  

  

  

【made by siwuxie095】

原创粉丝点击