spring學習筆記 2

2021-05-09 07:28:50 字數 1544 閱讀 2553

spring對aop的支援

1、如果目標物件實現了介面,預設情況下會採用jdk的動態**實現aop

2、如果目標物件實現了介面,可以強制使用cglib實現aop

3、如果目標物件沒有實現了介面,必須採用cglib庫,spring會自動在jdk動態**和cglib之間轉換

如何強制使用cglib實現aop?

* 新增cglib庫,spring_home/cglib/*.jar

* 在spring配置檔案中加入

jdk動態**和cglib位元組碼生成的區別?

* jdk動態**只能對實現了介面的類生成**,而不能針對類

* cglib是針對類實現**,主要是對指定的類生成乙個子類,覆蓋其中的方法

因為是繼承,所以該類或方法最好不要宣告成final 

例項如下:

(1):實現類:

Spring學習筆記2

一 什麼是aop 面向切面程式設計,通過預編譯方式和執行期動態 實現程式功能的統一維護的一種技術。在不影響原來功能 的基礎上,使用動態 加入自己需要的一些功能 比如許可權的驗證,事務的控制,日誌的記錄等等 移除之後,並不影響原來的功能 面向切面程式設計是通過動態 實現的,是對物件導向思想的補充。可以...

spring框架學習筆記2

springioc 1 責任鏈 我們使用mvc進行開發的時候,資料在各層之間進行傳遞,資料在業務層上構成乙個鏈條,這個鏈條成為責任鏈.2 基於責任鏈模式開發的缺點 責任鏈開發模式,我們發現層與層之間互相呼叫,造成層與層耦合性太高.3 解決的方案 spring ioc 控制反轉 4 實現 step 1...

決戰春招Spring學習筆記2

經過上次的學習和練習掌握了基於xml的ioc配置,用註解的配置不是很熟練但無傷大雅繼續往下學,以後在實戰中複習 aop為aspect oriented programming的縮寫,意為 面向切面程式設計 ioc是為了給 結耦,用反射的方式建立,降低 互相的依賴 那aop存在的意義是什麼?答 為了解...