用Logger來解釋攔截

2022-09-08 18:15:12 字數 1167 閱讀 2686

hz動態**學了 不知道在工作中雜用哦

he現在一般不會直接用吧,一般都是用aspectj這種完整aop的實現

stst

攔截方法呼叫

hz我見過把所有accessor方法放到切面的

還有transaction肯定都是在切面的

stst

比如乙個方法,記錄要儲存起來

用來驗證使用者名稱密碼,如果不攔截的話就要如下處理

bool valid(string user,string pwd)

zh典型的就是你會用spring就好了

stst

這種方式把不是valid必須要得邏輯牽扯進來了

he嗯嗯,spring實現的事務是乙個比較好的例子

簡單理解就是在service方法執行之前動態呼叫申明事務開始,在方法結束後執行事務提交,方法本身中看不到和事務打交道的**

zh前段時間測的乙個jar,開發用了動態**,不過一般web開發是用不上的

stst

如果攔截的話就相當於下面,客戶端對valid的呼叫被攔截到另外乙個方法:

bool valid2(string user,string pwd)

這樣把記錄日誌的 功能從valid方法移動到valid2方法上來了

hzok

stst

而valid2方法是使用者來寫的**,不是valid方法的作者寫的

helogger也是個非常棒的例子

stst

這樣valid2實際上是可擴充套件的,因為是由客戶寫的

hz這樣說*** 都是動態**實現的了

stst

,

是乙個說法

不過動態**有多種實現

前面提到的直接修改位元組碼,外覆類都是一種途徑

還有就是在源程式編譯時攔截,對於靜態型別的語言來說,這是唯一的方式,如c/c++

用信鴿來解釋HTTPS

密碼學是一門難以理解的學科,因為它充滿了數學定力。但是除非你要實際開發出一套加密演算法系統,否則你是沒必要強制理解哪些深奧的數學定理的。愛麗絲 鮑伯和.信鴿?這個說起來可能有點抽象,不然讓我們假設這些訊息都是由信鴿來傳遞的。我知道這個假設有些太過隨意,但相信我https就是這樣工作的,儘管它的速度快...

用牛郎織女來解釋Https

本文嘗試使用牛郎織女來解釋https。資訊交換傳遞從古至今都有,只是傳遞導體和交換方式不斷在發生變化。現代資訊傳遞都是通過網路進行。資訊傳遞步驟簡化 打包 傳輸 解包,而像http這類協議就是指定資訊傳遞的標準,而資訊傳遞一般主要考慮以下兩方面問題。本文主要討論傳遞的安全性。眾所周知 https就是...

Logger為什麼用static final修飾

springboot中logger採用static final進行修飾 controller public class jspcontroller 為什麼要用static還有final呢?1.定義成static final型別的變數,logger變數不可進行變更,第一次載入就載入到內存在中,讀取速度...