1. 程式人生 > >Spring容器框架、spring ioc、兩種注入方法set注入與構造器注入

Spring容器框架、spring ioc、兩種注入方法set注入與構造器注入

#1>spring是什麼?

spring是一個輕量級的控制反轉(IoC)和麵向切面(AOP)的容器框架
——從大小與開銷兩方面而言Spring都是輕量的
——通過控制反轉(IOC)的技術達到鬆耦合的目的
——提供了面向切面程式設計的豐富支援,允許通過分離應用的業務邏輯與系統級服務進行內聚性的開發
——包含並管理應用物件的配置和生命週期,這個意義上是一種容器
——將簡單的元件配置、組合成為複雜的應用,這個意義上又是框架

#2>什麼是框架:框架的特點:

框架就是制訂一套規範或規則,程式設計師在該規範或規則下工作,形象地說就是在搭好的舞臺上表演; 框架的特點: 1、半成品; 2、封裝了特定的處理流程與控制邏輯; 3、成熟的、不斷升級改進的軟體;

#3>框架與類庫的區別:

框架一般是封裝了邏輯、高內聚的,類庫則是鬆散的工具組合; 框架專注於某一領域,類庫則是更通用; 為什麼使用框架? 軟體系統日趨複雜; 重用度高,開發效率與質量提高; 是軟體設計人員要專注於對領域的瞭解,是需求分析更加充分; 一般框架配有完整的使用文件,易於上手,快速解決問題

#4> IOC

一、介面及面向介面程式設計 介面:只能有宣告不能有實現,支援多重繼承(在java8中介面可以擁有方法體) 抽象類:既可以有包含實現的宣告也可以有不包含實現的宣告 類:宣告必須包含實現 面向介面程式設計:指提供一個介面與一個實現類,介面是提供給使用者的,使用者通過它來建立物件,實現類是用來實現這個物件的,而介面與實現類是通過一個implements關鍵字來連線 介面實現的變動不會影響其他各層的呼叫,對公共服務非常重要 二、什麼是IOC 控制反轉:控制權的轉移,應用程式本身不負責依賴物件的建立與維護,而是由外部容器負責建立和維護。 依賴注入(DI):是一種實現方式,由IOC容器在執行期間,動態的將某種依賴關係注入到物件之中 目的:建立物件並且組裝物件之間的關係 三、Spring的Bean配置 在IOC容器中將所有的控制物件稱作bean,Spring對於bean的使用有兩種方式:基於spring-ioc.xml的配置和註解。 注意xml中關於bean的配置程式段 <bean id="oneInterface(自定義)" class="配置的實現類"></bean> 使用示例: public void test(){ OneInterface interface=super.getBean("oneInterface");//獲取bean,不需要new物件 interface.hello();//呼叫函式 } 四、Bean的初始化 五、Spring的常用注入方式
Spring IOC是一種設計模式,使物件不用顯示的建立依賴物件,而是將物件建立的過程交給Spring的IOC容器去管理,通過依賴注入的方式,來實現IOC;
常用兩種注入方式
A、設值注入
即通過XML中配置bean的依賴類,通過層級property屬性,來配置依賴關係,然後Spring通過setter方法,來實現依賴類的注入;
<property name="xxx" ref="xxx"></property>
注意:設定注入name要與該類的成員變數名稱保持一致
B、構造注入
方法同設值注入,不過具體實現的方法是通過顯示的創造一個構造方法,構造方法的引數名稱要與XML中配置的name名稱一致,XML配置的標籤為constructor-arg
<constructor-arg name="xxx" ref="xxx"></constructor-arg>
注意:設定注入name要與該類顯示
構造方法的引數名稱保持一致