1. 程式人生 > >Java中spring的學習

Java中spring的學習

spring中的IOC(控制反轉),控制反轉,控制和反轉,在傳統面向物件程式設計中,如果要在一個類中呼叫另外一個類中的方法屬性等,就需要這個類new一個另外那個類的物件,以達到控制的目的。而在IOC容器中,不需要這樣做,因為其將控制權交了出去,交給了IOC容器,由IOC容器來實現控制。其中的反轉,其實可以理解為交控制權交出去了,不再由自己去控制另外一個物件的建立,這就是反轉。而IOC還可以理解為“依賴注入”,即DI,這個層面上理解的話,就是指由IOC容器在執行期間,動態的將某種依賴關係注入到物件中,即一個物件需要呼叫另外一個物件的方法、屬性等的時候,另外一個物件就是此物件的依賴,注入的就是另外一個物件,而注入方式是通過spring的IOC注入的。

spring中的AOP,即面向切面程式設計。我們在開發一個應用的時候,肯定會有很多的功能,而在有些功能之前,我們可能需要做一些判斷、攔截之類的事。比如我們做一個企業oa系統,肯定需要在使用者進入一個介面之前,判斷他是否有這個許可權,再或者判斷使用者進入一個介面之前有沒有登入。此時,這次需要判斷、攔截的地方,我們可以理解為切面,實際的話,切面肯定包含了日誌檔案、事物管理等方面。

一般來說,我們在用spring開發程式的時候,執行流程大概如下:一般需要寫一個父類,父類是用來做關於spring配置檔案相關的事,然後執行的時候,先使用super繼承父類裡的方法,去尋得spring的相關配置,可以用super.getBean去獲取指定的bean配置。然後就是根據配置去進行相關操作,這個過程中,就會涉及到依賴注入。

IOC容器不是隨便什麼專案都能引入使用的,跟傳統專案相比,IOC其實多了一道工序,因此如果要求程式的執行效率的話,就不要考慮引入IOC。

本人才開始學spring,以上僅僅為個人的理解,作為參考使用。