反向控制也叫依賴注入,使用ioc,物件的依賴都是在物件建立時由負責協調系統中各個物件的外部實體提供的,所以ioc意味著關於物件如何得到它的協作物件責任的反轉了。
下面是我編寫的例子:
1:先寫乙個介面
package com.spring.study.ioctest; /** * 尋找介面 * @author shy.qiu */ public inte***ce quest
2:此介面的實現類
package com.spring.study.ioctest; /** * 建立乙個實現quest介面的類--寶藏尋找 * @author shy.qiu * */ public class treasurequest implements quest; // 實現介面方法 public object doquest() }
上面的類要用到的乙個類:
package com.spring.study.ioctest; /** * 寶藏類 * @author shy.qiu * */ public class treasure }
3:編寫另乙個介面:
package com.spring.study.ioctest; /** * 獵人介面 * @author shy.qiu */ public inte***ce hunters
4:此介面的實現類
package com.spring.study.ioctest; /** * 實現獵人介面的類 * @author shy.qiu */ public class hunterman implements hunters ; // 姓名 private string name; // 什麼任務 private quest quest; // 執行 public object dotask() // 給獵人分配任務 public void setquest(quest quest) }
5:配置檔案的編寫hunterquest.xml
<?xml version="1.0" encoding="utf-8"?>
cheng long
6:編寫執行**
這樣乙個簡單的ioc程式就完成了。
這個hunterman類和以往的程式不一樣的地方在於,城市獵人不知道會接受那種任務,只有配置檔案知道他要去做什麼任務,
重要的是這種把物件的責任從物件自身中轉移出來的思想。
spring學習筆記 2
spring對aop的支援 1 如果目標物件實現了介面,預設情況下會採用jdk的動態 實現aop 2 如果目標物件實現了介面,可以強制使用cglib實現aop 3 如果目標物件沒有實現了介面,必須採用cglib庫,spring會自動在jdk動態 和cglib之間轉換 如何強制使用cglib實現aop...
Spring學習筆記2
一 什麼是aop 面向切面程式設計,通過預編譯方式和執行期動態 實現程式功能的統一維護的一種技術。在不影響原來功能 的基礎上,使用動態 加入自己需要的一些功能 比如許可權的驗證,事務的控制,日誌的記錄等等 移除之後,並不影響原來的功能 面向切面程式設計是通過動態 實現的,是對物件導向思想的補充。可以...
spring學習筆記 IOC 控制反轉
spring為編寫企業應用程式提供了輕量的解決方案,同時仍然支援使用宣告式事務 用rmi或web service遠端呼叫 以及使用多種方式來將資料持久化到資料庫。ioc 控制反轉。也有人這樣叫 di 依賴注入。aop 面前切面程式設計。所謂控制反 以前我們要呼叫某個類的方法。首先是new這個類。然後...