Spring01 概述及IOC理論推導

2021-10-13 04:46:51 字數 2023 閱讀 1882

ioc理論推導

ioc本質

一句話概括:spring是乙個輕量級的控制反轉(ioc)和面向切面(aop)的容器(框架)。

先寫乙個userdao介面

public

inte***ce

userdao

再去寫dao的實現類

public

class

userdaoimpl

implements

userdao

}

然後去寫userservice的介面

public

inte***ce

userservice

最後寫service的實現類

public

class

userserviceimpl

implements

userservice

}

測試一下

@test

public

void

test()

public

class

userdaomysqlimpl

implements

userdao

}

緊接著我們要去使用mysql的話,我們就需要去service實現類裡面修改對應的實現。
public

class

userserviceimpl

implements

userservice

}

在假設,我們再增加乙個userdao的實現類。
public

class

userdaooracleimpl

implements

userdao

}

public

class

userserviceimpl

implements

userservice

@override

public

void

getuser()

}

現在去我們的測試類裡,進行測試 ;
@test

public

void

test()

控制反轉ioc(inversion of control),是一種設計思想,di(依賴注入)是實現ioc的一種方法,也有人認為di只是ioc的另一種說法。沒有ioc的程式中 , 我們使用物件導向程式設計 , 物件的建立與物件間的依賴關係完全硬編碼在程式中,物件的建立由程式自己控制,控制反轉後將物件的建立轉移給第三方,個人認為所謂控制反轉就是:獲得依賴物件的方式反轉了。

ioc是spring框架的核心內容,使用多種方式完美的實現了ioc,可以使用xml配置,也可以使用註解,新版本的spring也可以零配置實現ioc。

spring容器在初始化時先讀取配置檔案,根據配置檔案或元資料建立與組織物件存入容器中,程式使用時再從ioc容器中取出需要的物件。

採用xml方式配置bean的時候,bean的定義資訊是和實現分離的,而採用註解的方式可以把兩者合為一體,bean的定義資訊直接以註解的形式定義在實現類中,從而達到了零配置的目的。

控制反轉是一種通過描述(xml或註解)並通過第三方去生產或獲取特定物件的方式。在spring中實現控制反轉的是ioc容器,其實現方法是依賴注入(dependency injection,di)。

spring01 控制反轉和依賴注入(IOC)

id名由自己取,獲取類時用到,類路徑讓容器找到這個類 4 得到類 載入spring配置檔案 從容器中獲取物件 呼叫方法執行 bean1.test 可以看到現在已經不用new即可得到類物件。依賴注入 在乙個類中需要呼叫另乙個類時,有兩種注入方式。方式1 構造方法注入 public class bean...

Spring 01 學習筆記

1.屬性注入 setter方法注入,property 2.構造注入 constructor arg 3.靜態工廠注入 4.例項工廠注入 注意 注入只會注入到spring用getbean或得到的物件,自己建立的物件 new 不會被spring注入 屬性注入 構造注入 普通成員p標籤方式注入 物件成員注...

Spring 01 簡單介紹

ioc容器 ioc是指的程式開發中,例項的建立不再由呼叫者管理,而是由 spring 容器建立。spring 容器會負責控制程式之間的關係,而不是由程式 直接控制的,因此,控制權有程式 轉移到了 spring 容器中,控制權發生了反轉,這就是 ioc 思想。spring 提供了兩種 ioc 容器,分...