struts2過濾器和攔阻器的差別剖析。本站提示廣大學習愛好者:(struts2過濾器和攔阻器的差別剖析)文章只能為提供參考,不一定能成為您想要的結果。以下是struts2過濾器和攔阻器的差別剖析正文
本文剖析了struts2過濾器和攔阻器的差別。分享給年夜家供年夜家參考,詳細以下:
1、實質差別:
1. 攔阻器是基於java的反射機制的,而過濾器是基於函數回調。
2. 攔阻器不依附與servlet容器,過濾器依附與servlet容器。
3. 攔阻器只能對action要求起感化,而過濾器則可以對簡直一切的要求起感化。
4. 攔阻器可以拜訪action高低文、值棧裡的對象,而過濾器不克不及拜訪。
5. 在action的性命周期中,攔阻器可以屢次被挪用,而過濾器只能在容器初始化時被挪用一次
2、應用差別:
過濾器 是在java web中,你傳入的request,response提早過濾失落一些信息,或許提早設置一些參數,然後再傳入servlet或許struts的 action停止營業邏輯,
好比過濾失落不法url(不是login.do的地址要求,假如用戶沒有上岸都過濾失落),
或許在傳入servlet或許 struts的action前同一設置字符集,
或許去除失落一些不法字符(聊天室常常用到的,一些罵人的話)。。。
攔阻器 可經由過程的是相符前提的action。 攔阻器自己是一個通俗的Java對象,它能靜態攔阻Action挪用,
Action履行前後履行攔阻器自己供給的各類個樣的Web項目需求。也能夠阻攔Action的履行,同時也能夠提取
Action中可以復用的部門。
(是在面向切面編程的,就是在你的service或許一個辦法前挪用一個辦法,或許在辦法後挪用一個辦法,好比靜態署理就是攔阻器的簡略完成,在你挪用辦法前打印出字符串(或許做其它營業邏輯的操作),也能夠在你挪用辦法後打印出字符串,乃至在你拋出異常的時刻做營業邏輯的操作。)
願望本文所述對年夜家基於Struts框架的Java法式設計有所贊助。