filter,interceptor,aspectj的區(qū)別和使用

1秽褒、Filter

過(guò)濾器

? 過(guò)濾器是處于客戶端與服務(wù)器資源文件之間的一道過(guò)濾網(wǎng)壶硅,在訪問(wèn)資源文件之前,通過(guò)一系列的過(guò)濾器對(duì)請(qǐng)求進(jìn)行修改销斟、判斷等庐椒,把不符合規(guī)則的請(qǐng)求在中途攔截或修改。也可以對(duì)響應(yīng)進(jìn)行過(guò)濾蚂踊,攔截或修改響應(yīng)约谈。

過(guò)濾器一般用于登錄權(quán)限驗(yàn)證、資源訪問(wèn)權(quán)限控制犁钟、敏感詞匯過(guò)濾棱诱、字符編碼轉(zhuǎn)換等等操作,便于代碼重用涝动,不必每個(gè)servlet中還要進(jìn)行相應(yīng)的操作迈勋。


項(xiàng)目中的應(yīng)用:


2、Interceptor

攔截器是在面向切面編程中應(yīng)用的捧存,就是在你的service或者一個(gè)方法前調(diào)用一個(gè)方法粪躬,或者在方法后調(diào)用一個(gè)方法。是基于JAVA的反射機(jī)制昔穴。

攔截器镰官,在AOP(Aspect-Oriented Programming)中用于在某個(gè)方法或字段被訪問(wèn)之前,進(jìn)行攔截吗货,然后在之前或之后加入某些操作泳唠。攔截是AOP的一種實(shí)現(xiàn)策略。

Interceptor是spring框架自己帶的攔截器宙搬,它可以拿到處理的Controller和拿到處理的方法 但是拿不到具體的請(qǐng)求參數(shù)笨腥。

攔截器(Interceptor)和過(guò)濾器(Filter)的執(zhí)行順序

過(guò)濾前-攔截前-Action處理-攔截后-過(guò)濾后


3、Aspect

使用環(huán)繞通知勇垛,切入要切入的類脖母,當(dāng)請(qǐng)求的時(shí)候回?cái)r截下來(lái),這樣可以獲取攔截的方法的參數(shù)


? ? 總結(jié):? 過(guò)濾器和攔截器的區(qū)別闲孤,過(guò)濾器是依賴于servlet容器(struts)谆级,在實(shí)現(xiàn)上基于函數(shù)回調(diào),可以對(duì)幾乎所有的請(qǐng)求進(jìn)行過(guò)濾。但缺點(diǎn)是一個(gè)過(guò)濾器實(shí)例只能在容器初始化時(shí)調(diào)用一次肥照,來(lái)進(jìn)行過(guò)濾操作脚仔,獲得我們想要的數(shù)據(jù)。

三者之間主要還是粒度的差異舆绎,應(yīng)用場(chǎng)景的不同鲤脏。

過(guò)濾器(Filter):可以拿到原始的http請(qǐng)求,但是拿不到你請(qǐng)求的控制器和請(qǐng)求控制器中的方法的信息吕朵。

攔截器(Interceptor):可以拿到你請(qǐng)求的控制器和方法猎醇,卻拿不到請(qǐng)求方法的參數(shù)。

切片? (Aspect)? ? ? :? 可以拿到方法的參數(shù)努溃,但是卻拿不到http請(qǐng)求和響應(yīng)的對(duì)象

后面項(xiàng)目中我們可以使用Aspect來(lái)記錄我們的業(yè)務(wù)日志姑食。具體使用:

在controller處增加注解


具體代碼查看logaspect.java

————————————————

版權(quán)聲明:本文為CSDN博主「hejianop」的原創(chuàng)文章,遵循 CC 4.0 BY-SA 版權(quán)協(xié)議茅坛,轉(zhuǎn)載請(qǐng)附上原文出處鏈接及本聲明音半。

原文鏈接:https://blog.csdn.net/hejianop/article/details/83655540

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市贡蓖,隨后出現(xiàn)的幾起案子曹鸠,更是在濱河造成了極大的恐慌,老刑警劉巖斥铺,帶你破解...
    沈念sama閱讀 218,525評(píng)論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件彻桃,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡晾蜘,警方通過(guò)查閱死者的電腦和手機(jī)邻眷,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,203評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)剔交,“玉大人肆饶,你說(shuō)我怎么就攤上這事♂#” “怎么了驯镊?”我有些...
    開(kāi)封第一講書(shū)人閱讀 164,862評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)竭鞍。 經(jīng)常有香客問(wèn)我板惑,道長(zhǎng),這世上最難降的妖魔是什么偎快? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,728評(píng)論 1 294
  • 正文 為了忘掉前任冯乘,我火速辦了婚禮,結(jié)果婚禮上晒夹,老公的妹妹穿的比我還像新娘裆馒。我一直安慰自己妖异,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,743評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布领追。 她就那樣靜靜地躺著,像睡著了一般响逢。 火紅的嫁衣襯著肌膚如雪绒窑。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,590評(píng)論 1 305
  • 那天舔亭,我揣著相機(jī)與錄音些膨,去河邊找鬼。 笑死钦铺,一個(gè)胖子當(dāng)著我的面吹牛订雾,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播矛洞,決...
    沈念sama閱讀 40,330評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼洼哎,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了沼本?” 一聲冷哼從身側(cè)響起噩峦,我...
    開(kāi)封第一講書(shū)人閱讀 39,244評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎抽兆,沒(méi)想到半個(gè)月后识补,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,693評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡辫红,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,885評(píng)論 3 336
  • 正文 我和宋清朗相戀三年凭涂,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片贴妻。...
    茶點(diǎn)故事閱讀 40,001評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡切油,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出名惩,到底是詐尸還是另有隱情白翻,我是刑警寧澤,帶...
    沈念sama閱讀 35,723評(píng)論 5 346
  • 正文 年R本政府宣布绢片,位于F島的核電站滤馍,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏底循。R本人自食惡果不足惜巢株,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,343評(píng)論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望熙涤。 院中可真熱鬧阁苞,春花似錦困檩、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,919評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至骚灸,卻和暖如春糟趾,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背甚牲。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,042評(píng)論 1 270
  • 我被黑心中介騙來(lái)泰國(guó)打工义郑, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人丈钙。 一個(gè)月前我還...
    沈念sama閱讀 48,191評(píng)論 3 370
  • 正文 我出身青樓非驮,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親雏赦。 傳聞我的和親對(duì)象是個(gè)殘疾皇子劫笙,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,955評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容