spring2 Aop與事務、許可權管理
1.aop的應用場景?
2.Aop的原理?
Aop 指面向切面程式設計,作為物件導向的補充,用於處理系統中分佈於各個模組的橫切關注點,比如事務管理、日誌、快取等。Aop實現的關鍵在於AOP框架自動建立AOP代理,主要分為:靜態代理和動態代理,靜態代理的代表為AspectJ;而動態代理則以Speing Aop為代表。
Spring Aop中的動態代理主要有兩種方式,JDK動態代理和CGLIB動態代理。JDK動態代理通過反射來接受被代理的類,並且要求被代理的類必須實現一個介面。JDK動態代理的核心是InvocationHandler介面和Proxy類。
如果目標類沒有實現介面,那麼Spring Aop會選擇使用CGLIB動態代理目標類。CGLIB,是一個程式碼生成的類庫,可以在執行時動態的生成某個類的子類。
3.如何理解AOP中的連線點、切點、增強、引介、織入、切面這些概念
-
連線點:程式執行的某個特定位置(如:某個方法呼叫前、呼叫後,方法丟擲異常後)。一個類或一段程式擁有一些具有邊界性質的特定點,這些程式碼中的特定點就是連線點。
-
切點:如果連線點相當於資料中的記錄,那麼切點相當於查詢條件,一個切點可以匹配多個連線點。Spring Aop的規則解析引擎負責解析切點所設定的查詢條件,找到對應的連線點。
-
增強:增強是織入到目標類連線點上的一段程式程式碼。Spring提供的增強介面都是帶方位名的,如:BeforeAdvice…
-
引介:引介是一種特殊的增強。它為類新增一些屬性和方法。
-
織入:織入是將增強新增到目標類具體連線點上的過程。
-
切面:前面是由切點和增強(引介)組成的,它包括了對橫切關注功能的定義,也包括了對連線點的定義。
***帥氣的遠遠啊***
相關文章
- Android 採用AOP方式封裝6.0許可權管理Android封裝
- 許可權控制及AOP日誌
- SpringBoot與Shiro整合-許可權管理Spring Boot
- Linux賬戶與許可權管理Linux
- 玩轉 K8s 許可權控制:RBAC + kubeconfig 搞定 kubectl 許可權管理那些事K8S
- Odoo許可權管理Odoo
- 特殊許可權管理
- sql許可權管理SQL
- 許可權管理策略
- MySQL許可權管理MySql
- 4、許可權管理
- RBAC許可權管理
- PostgreSQL:許可權管理SQL
- MongoDB 使用者與許可權管理MongoDB
- django開發之許可權管理(一)——許可權管理詳解(許可權管理原理以及方案)、不使用許可權框架的原始授權方式詳解Django框架
- casbin-許可權管理
- Security 10:許可權管理
- 服務端指南 | 檔案許可權管理剖析服務端
- 檔案許可權與計劃任務
- 許可權系統:許可權應用服務設計
- Android6.0------許可權申請管理(單個許可權和多個許可權申請)Android
- SpringBoot(一) 如何實現AOP的許可權控制Spring Boot
- Unix Linux檔案型別與許可權管理Linux型別
- DRF內建許可權元件之自定義許可權管理類元件
- 賬號和許可權管理
- 1.6.1. 管理員許可權
- Linux 中的許可權管理Linux
- ThinkPHP5+許可權管理PHP
- 關於mysql許可權管理MySql
- ubuntu 許可權管理設定Ubuntu
- Linux 下許可權的管理Linux
- MySQL許可權管理實戰MySql
- fastadmin的許可權管理authAST
- 許可權系統:許可權應用服務設計Tu
- Confluence6對比系統管理員許可權和Confluence管理員許可權
- 『學了就忘』Linux許可權管理 — 55、檔案特殊許可權Linux
- linux中安全和許可權那些事Linux
- 使用者許可權管理之使用者與組管理