spring概念

大菲哥的小寶貝發表於2018-12-29

spring概念

spring 就是一個容器,容器中裝什麼物件就有什麼功能,所以spring被稱為一站式框架,意思就是一個spring就能開發一個專案,
spring在三層架構中負責管理專案中的所有物件,可以看作專案中的管家

ioc思想

inverse of control(反轉控制)
將我們建立的方式反轉了,以前我們需要自己建立物件自己維護,三層架構中的關係也是由自己維護,使用spring後,物件的建立可以由spring完成建立以及注入.反轉控制就是反轉了物件的建立方式.從我們自己建立物件反轉交給了程式

DI: dependency Injection (依賴注入)

實現IOC思想需要DI做支援,DI的本質就是建立物件之間的依賴關係
注入方式:
set注入(常用),
建構函式注入,
p名稱空間注入
spel注入(spring表示式語言)
注入型別:
值型別,引用型別


spring的api簡介

1.BeanFactory介面(過時)
spring原始介面.針對實現類的功能比較單一,特點是每次獲得物件時才會建立物件.適合在資源匱乏的環境使用
2.ApplicationContext
每次啟動時就會建立容器中配置的所有的物件,並提供更多的功能實現類為
(1) 從類路徑下載入配置檔案:ClassPathXmlApplicationContext
(2)從硬碟絕對路徑下載入檔案:FileSystemXmlApplicationContext(“d:/xxx/xxx/xxx/…”)


spring實現aop的原理

1.動態代理,被代理物件必須實現介面才能產生代理物件
2.cglib代理,可以對任何物件實現代理,原理是對每個物件進行繼承代理,反過來說,如果類為final修飾,將不能被代理

spring Aop 思想

AOP全名Aspect-Oriented Programming,中文直譯為面向切面(方面)程式設計
aop思想主要用於有橫切性質的系統級的服務,比如struts2中的攔截器,以及過濾filter中對編碼的處理等等.
什麼是橫切性質呢?就是橫向抽取,縱向重複,用自己話說就是說橫向抽取縱向重複性質的程式碼,提高了程式碼的複用性,以及對程式碼的操作更靈活了

在這裡插入圖片描述


aop在spring中的體現就是,能夠為容器中的物件生成代理物件,對物件的功能的增強等,spring aop就可以說是spring中可以橫向生成代理物件,也可以橫向管理事務

spring aop名詞學習

以下概念詞意思都是在spring中的體現
Joinpoint(連線點):目標物件,所以可以增強的方法
Pointcut(切入點):目標物件,已經或確定要增強的方法
Advice(通知/增強):增強的程式碼
Target(目標物件):被代理的物件
Weaving(織入):將通知應用到切入點的過程
Proxy(代理):將通知織入到目標物件之後,形成的代理物件
aspect(切面):切入點加通知

新手一枚,主要是為了總結一下,學的不好,請多關照,一直努力中,表達能力不是很好,繼續學習,希望小夥伴和我一起努力哦*

明天寫spring管理事務

相關文章