Spring-第一章
初始Spring
Spring是應用了很多優秀的設計模式,對于專案的實作,提供了優秀的解決方法;Spring是一個輕量級(低侵入)MVC和邏輯代碼框架 . 類與類之間的解耦合 IOC
MVC 框架侵入

IOC(Inverse Of Control) 控制反轉 大管家
將傳統創建物件的控制權 new ,交由spring容器中(組態檔)中來宣告和實作
MVC框架中的,物件管理的大管家,實作類與類之間的解耦合
IOC的好處:解耦合
IOC實作原理:工廠設計模式---反射(無參構造方法) 組態檔+工廠類
Spring-IOC實作:
1. 創建一個java專案
2. 導包

3. 復原一個MyBatis框架 下的Product例子
4. 復制一個Spring的主組態檔

bean 標簽來表示一個物件;
id 是一個物件的唯一標識;
class 是類的全路徑;
5. 由Spring來創建物件

5.1 加載Spring主組態檔
5.2 根據Bean ID,由工廠創建物件
5.3 正常呼叫該物件的方法
DI(Dependence Injection)依賴注入 給屬性賦值
為物件的屬性賦值
1. 設值注入 底層實作set方法賦值

ref 參考其它物件,物件的嵌套

2. 構造注入 底層實作構造方法注入

根據bean下的引數型別和引數數量,尋找對應的構造方法
如果沒有,則報錯
3. 自動裝配 MVC
限制:不能自動裝配所謂的簡單型別包括基本型別,字串和集合類
通常用來自動裝配 物件
3.1按照名稱來自動裝配

3.1.1 標注autowire=”byName”,表示通過名稱來自動裝配
3.1.2 掃描當前類下,所有 物件 的 屬性值,然后通過這個屬性值來spring容器(組態檔)中找有沒有對應的bean-id
3.1.3 如果找到,則自動裝配該物件;如果找不到,則報錯
3.1.4 底層實作是 set方法
3.2 按照型別來自動裝配

3.2.1 標注autowire=”byType”,表示通過型別來自動裝配
3.2.2 掃描當前類下,所有的 物件 的 型別,然后通過型別來spring容器(組態檔)中找有沒有對應的型別
3.2.3 如果找到,則自動裝配該物件;否則,則報錯
3.2.4 底層實作是 set方法
三種DI注入對比

轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/5514.html
標籤:Oracle
