jsp filter 過(guò)濾器功能與簡(jiǎn)單用法示例
本文實(shí)例講述了jsp filter 過(guò)濾器功能與簡(jiǎn)單用法。分享給大家供大家參考,具體如下:
過(guò)濾器的作用是什么?
過(guò)濾器可以動(dòng)態(tài)地?cái)r截請(qǐng)求和響應(yīng),以變換或使用包含在請(qǐng)求或響應(yīng)中的信息。
可以將一個(gè)或多個(gè)過(guò)濾器附加到一個(gè) servlet 或一組 servlet。過(guò)濾器也可以附加到 javaserver pages (jsp) 文件和 html 頁(yè)面。
- 在客戶(hù)端的請(qǐng)求訪問(wèn)后端資源之前,攔截這些請(qǐng)求。
- 在服務(wù)器的響應(yīng)發(fā)送回客戶(hù)端之前,處理這些響應(yīng)。
過(guò)濾器的實(shí)現(xiàn)要實(shí)現(xiàn) java.servlet.filter 這個(gè)接口類(lèi)
一個(gè)簡(jiǎn)易的filter 類(lèi)示例
package demo; import java.io.ioexception; import javax.servlet.filter; import javax.servlet.filterchain; import javax.servlet.filterconfig; import javax.servlet.servletexception; import javax.servlet.servletrequest; import javax.servlet.servletresponse; public class demofilter implements filter { private string name=null; @override public void destroy() { } @override public void dofilter(servletrequest arg0, servletresponse arg1, filterchain arg2) throws ioexception, servletexception { arg0.setattribute("name", "init text string : " + name); arg2.dofilter(arg0, arg1); } @override public void init(filterconfig arg0) throws servletexception { //獲得web.xml中filter init-param 中的配置 name = arg0.getinitparameter("name"); } }
僅僅只是寫(xiě)好了這個(gè)過(guò)濾器類(lèi)還不行。我們要在web.xml中聲明哪些請(qǐng)求需要過(guò)濾器的調(diào)用
web.xml
<!--聲明一個(gè)filter--> <filter> <!--filter的名稱(chēng)--> <filter-name>demofilter</filter-name> <!--filter 類(lèi)--> <filter-class>demo.demofilter</filter-class> <!--該filter類(lèi)需要的配置--> <init-param> <param-name>name</param-name> <param-value>my name is tanyong</param-value> </init-param> </filter> <!--為url-pattern 中相匹配的url鏈接 映射至相應(yīng)的filter filter 通過(guò) filter-name來(lái)識(shí)別--> <filter-mapping> <filter-name>demofilter</filter-name> <!--匹配映射規(guī)則,我這里用的是所有請(qǐng)求都要在demofilter filter 里面去兜晃一圈--> <url-pattern>/*</url-pattern> </filter-mapping>
希望本文所述對(duì)大家jsp程序設(shè)計(jì)有所幫助。
相關(guān)文章
- jsp+servlet實(shí)現(xiàn)文件上傳與下載功能
- EJB3.0部署消息驅(qū)動(dòng)Bean拋javax.naming.NameNotFoundException異常
- 在JSP中使用formatNumber控制要顯示的小數(shù)位數(shù)方法
- 秒殺系統(tǒng)Web層設(shè)計(jì)的實(shí)現(xiàn)方法
- 將properties文件的配置設(shè)置為整個(gè)Web應(yīng)用的全局變量實(shí)現(xiàn)方法
- JSP使用過(guò)濾器防止Xss漏洞
- 在JSP頁(yè)面中動(dòng)態(tài)生成圖片驗(yàn)證碼的方法實(shí)例
- 詳解JSP 內(nèi)置對(duì)象request常見(jiàn)用法
- 使用IDEA編寫(xiě)jsp時(shí)EL表達(dá)式不起作用的問(wèn)題及解決方法
- jsp實(shí)現(xiàn)局部刷新頁(yè)面、異步加載頁(yè)面的方法
- Jsp中request的3個(gè)基礎(chǔ)實(shí)踐
- JavaServlet的文件上傳和下載實(shí)現(xiàn)方法
- JSP頁(yè)面的靜態(tài)包含和動(dòng)態(tài)包含使用方法