IoC(Inversion of Control)控制反轉,也叫依賴注入編程
核心經過反射機制實現緩存
AOP(Aspect Oriented Programming)面向切面編程性能優化
基於IOC,實現aop的技術主要有兩類,一是採用動態代理技術,利用截取消息的方式,對該消息進行裝飾,以取代原有對象行爲的執行;二是採用靜態織入的方式。性能
JDK動態代理和CGLIB代理 JDK動態代理:其代理對象必須是某個接口的實現,它是經過在運行期間建立一個接口的實現類來完成對目標對象的代理;其核心的兩個類是InvocationHandler和Proxy。優化
aop應用場景:代理
Authentication 權限檢查 調試
Caching 緩存 日誌
Context passing 內容傳遞 orm
Error handling 錯誤處理 對象
Lazy loading 延遲加載
Debugging 調試
logging, tracing, profiling and monitoring 日誌記錄,跟蹤,優化,校準
Performance optimization 性能優化,效率檢查
Persistence 持久化
Resource pooling 資源池
Synchronization 同步
Transactions 事務管理