Spring IOC容器的基本應用

Spring IOC概述


 

  IOC全稱Inversion of Control,被譯爲控制反轉,是指程序中對象的獲取方式發生反轉,由最初的new方式建立,轉變爲由第三方框架建立、注入(DI),它下降了對象之間的耦合度。spring

  Spring容器是IOC機制的一種實現,同時IOC也是Spring框架的基礎和核心,它藉助DI(Dependency Injection)方法實現。框架

Spring Bean容器


 

   Spring容器是Spring框架中的核心組件,負責建立Bean對象(一種簡單規範的JAVA對象)及管理這些對象之間的依賴關係。this

  Spring容器是如何工做的呢?在Spring項目運行是,Spring容器負責讀取項目中的元數據信息(這些元數據多是基於xml、也多是基於註解實現),而後這些信息建立Bean對象的實例。spa

  IOC是Spring框架中的一種機制,提供了容器中對象的控制反轉功能,這個功能的實現須要藉助依賴查找和依賴注入。code

 

•Spring容器元數據配置

 

   Spring中元數據的配置有兩種方式,基於xml或annotation方式。這個小節瞭解基於XML方式的元數據實現bean元素的基本配置(後續在描述annotation方式)。xml

  

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <beans xmlns="http://www.springframework.org/schema/beans"
 3     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 4     xsi:schemaLocation="http://www.springframework.org/schema/beans
 5       http://www.springframework.org/schema/beans/spring-beans.xsd">
 6 
 7     <bean id="..." class="...">
 8         <!-- collaborators and configuration for this bean go here -->
 9     </bean>
10 
11     <bean id="..." class="...">
12         <!-- collaborators and configuration for this bean go here -->
13     </bean>
14 
15     <!-- more bean definitions go here -->
16 
17 </beans>

 

  Spring中多個元素配置文件的實現方法對象

1 <beans>
2     <import resource="services.xml"/>
3     <import resource="resources/messageSource.xml"/>
4     <import resource="/resources/themeSource.xml"/>
5 
6     <bean id="bean1" class="..."/>
7     <bean id="bean2" class="..."/>
8 </beans>

•Spring容器的初始化

  Spring中容器的類型爲Application類型,其初始化方法以下:blog

1 ApplicationContext context =
2 new ClassPathXmlApplicationContext("beans.xml");

  Spring容器初始化是須要加載元數據的配置信息,類如beans.xml文件中聲明的元數據的相關配置。get

Spring 容器的使用

  Spring容器初始化之後,能夠經過容器的getBean(...)方法獲取容器的Bean對象,進而操做Bean對象,例如:it

 

1 Contex.getBean(「xxxService」,XxxService.class);

 

 

 

 

 

 2018-03-10 

文筆有限,才疏學淺,文中如有不正之處,萬望告知。

相關文章
相關標籤/搜索