Servlet四種過濾器工作方式
Servlet四種過濾器工作方式,從J2EE1.3開始,Servlet2.3規範中加入了對過濾器的支持。過濾器能夠對目標資源的請求和響應進行截取。過濾器的工作方式分爲四種,下面讓我們分別來看看這四種過濾器的工作方式:
1、request過濾器
這種過濾器的工作方式比較簡單,大家也經常遇到,如下圖所示:以下是文件配置方式:
myFilter
lter
myFilter
目標資源一
下面我們更改一下文件的配置,如下方式:
myFilter
lter
myFilter
目標資源一
myFilter
目標資源二
也就是說此過濾器對目標資源一和目標資源二都進行過濾,然後當目標資源一被訪問的時候我們將請求轉發給目標資源二,那麼這個時候過濾器是怎麼工作的呢?如下圖所示:我們可以看到,當我們訪問目標資源一時過濾器截取了請求,然後再轉發給目標資源一,然後再轉發給目標資源二,從圖中我們可以看到過濾器沒有截取轉發到目標資源二的請求,但是我們已經在文件中配置了該過濾器對目標資源二的過濾,爲什麼又沒有起到過濾作用呢?
答案就在於,目標資源一是客戶端直接訪問,而目標資源二是被轉發過來的,這時過濾器就不能過濾目標資源二。如果你直接訪問目標資源二,你會發現該過濾器起到了作用?
我們上面的文件配置與以下方式等價:
myFilter
myFilter
lter
myFilter
目標資源一
REQUEST
myFilter
目標資源二
REQUEST
這種方式的.配置,說明只有直接訪問該目標資源時該過濾器纔會起作用,對轉發到該目標資源的請求將忽略不處理。
那如果我想對轉發到目標資源二的請求進行過濾,那怎麼辦呢?答案見,下一種過濾器,forward過濾器。
2、forward過濾器
我們將文件的配置修改如下:
myFilter
myFilter
lter
myFilter
目標資源一
REQUEST
myFilter
目標資源二
FORWARD
工作方式如下圖所示:
我們看對目標資源二過濾的配置方式,這時過濾方式爲forward,也就是說對轉發到目標資源二的請求過濾,如果直接訪問目標資源二,過濾器將不起作用。
3、include過濾器
理解了forward過濾器之後,include過濾器就不難理解了。以下方式:
myFilter
目標資源二
INCLUDE
此表示對包含了目標資源二的請求過濾,如果直接訪問目標資源二,則此過濾器將不起作用。
include包含以下語句:
在JSP頁面中的動作:指令包含,這時此過濾器不工作。
4、error過濾器
當我們訪問一個web目標資源時,如果服務器沒有找到該目標資源,那麼服務器就會給出一個404錯誤代碼。如果我們給404錯誤代碼定義一個頁面,那麼當404錯誤發生時就會調用該頁面,請看以下文件的配置:
myFilter
/
ERROR
404
/
當我們訪問一個不存在的文件時,就會訪問,但是配置了過濾器對錯誤頁面進行過濾,所以過濾器先接受到請求,然後再轉發給.
如果我們訪問一個已經存在的頁面,會不會調用呢?如果這個頁面中有Error(404,“出錯了!”);那麼該錯誤頁面仍然會被調用,過濾器也會工作。
相關文章
-
Covering the ears to steal the bell高中英語作文
once upon a time there was a stupid man. his neighbor bought a nice bell. the stupid man liked it very much and wanted to steal it. one silent night, he went to his neighbor’s house. he tried to get -
A Letter to the University President爲題目的作文
Direction: For this part, you are allowed thirty minutes to write a composition on the topic: A letter to the university president about the canteen service on campus, you should write at least 100 words, -
《The Prevalence of Western Holidays》英語四級作文
Many young people in China today prefer Weste holidays to traditional Chinese festivals. Christmas is now celebrated by the younger generation all over China, and it has become especially popular as a -
TV Receivers in Students Flats大學英語作文
夢見自己得到了某種東西,好日子將到來。 -
j2ee培訓:如何構建RESTful Web Service
JavaEE的核心是EJB3.0, 其提供了更兼便捷的企業級的應用框架。下面yjbys小編爲大家準備了關於如何構建RESTful Web Service的.文章,歡迎閱讀。 1. 首先是實體類,注意其中的@XmlRootElement註解package s;import ;imp -
MS SQL Server Management Studio Express安裝圖文具體步驟
Microsoft sql server Management Studio Express (SSMSE) 是一種免費、易用的圖形管理工具,用於管理 SQL Server 2005 Express Edition 和具有高級服務的 SQL Server 2005 Express Edition。SSMSE 還可以管理任何版本 -
TOEFL詞彙:representative
買酒、衣服、鞋…各種無紡布袋子,太多了用不完,扔了可惜,不如變身牆上收納袋,舊物換新顏,無敵收納,美觀大方,省錢又節約空間~一起來試試吧!主要材料:無紡布袋子 1無紡布 1筷子 1禮品盒手拎繩 1所需工具:剪刀 1尺子 1 -
A Letter to the Class Adviser英語作文
Dear Mr. Lai,尊敬的`賴老師:I am writing this letter just want to say thanks to you. I am going to graduate in two weeks. You have been my class adviser for three years. During these three years you hav -
六級英語寫作範文:The Celebration of Western Festivals
Directions: For this part you are allowed 30 minutes to write a short essay entitled The Celebration of Weste Festivals. You should write at least 150 words following the outline given below.1. 現在國 -
英語範文:Stress-relieving Laughter
Let's face it, life can be tough sometimes. Whether you're on a tight deadline with the boss breathing down you neck or you're sitting in rush-hour traffic and your car's A/C is on the