jsp filter 過濾器功能與簡單用法示例
本文實例講述了jsp filter 過濾器功能與簡單用法。分享給大家供大家參考,具體如下:
過濾器的作用是什么?
過濾器可以動態地攔截請求和響應,以變換或使用包含在請求或響應中的信息。
可以將一個或多個過濾器附加到一個 servlet 或一組 servlet。過濾器也可以附加到 javaserver pages (jsp) 文件和 html 頁面。
- 在客戶端的請求訪問后端資源之前,攔截這些請求。
- 在服務器的響應發送回客戶端之前,處理這些響應。
過濾器的實現要實現 java.servlet.filter 這個接口類
一個簡易的filter 類示例
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"); } }
僅僅只是寫好了這個過濾器類還不行。我們要在web.xml中聲明哪些請求需要過濾器的調用
web.xml
<!--聲明一個filter--> <filter> <!--filter的名稱--> <filter-name>demofilter</filter-name> <!--filter 類--> <filter-class>demo.demofilter</filter-class> <!--該filter類需要的配置--> <init-param> <param-name>name</param-name> <param-value>my name is tanyong</param-value> </init-param> </filter> <!--為url-pattern 中相匹配的url鏈接 映射至相應的filter filter 通過 filter-name來識別--> <filter-mapping> <filter-name>demofilter</filter-name> <!--匹配映射規則,我這里用的是所有請求都要在demofilter filter 里面去兜晃一圈--> <url-pattern>/*</url-pattern> </filter-mapping>
希望本文所述對大家jsp程序設計有所幫助。
相關文章
- jsp+servlet實現文件上傳與下載功能
- EJB3.0部署消息驅動Bean拋javax.naming.NameNotFoundException異常
- 在JSP中使用formatNumber控制要顯示的小數位數方法
- 秒殺系統Web層設計的實現方法
- 將properties文件的配置設置為整個Web應用的全局變量實現方法
- JSP使用過濾器防止Xss漏洞
- 在JSP頁面中動態生成圖片驗證碼的方法實例
- 詳解JSP 內置對象request常見用法
- 使用IDEA編寫jsp時EL表達式不起作用的問題及解決方法
- jsp實現局部刷新頁面、異步加載頁面的方法
- Jsp中request的3個基礎實踐
- JavaServlet的文件上傳和下載實現方法
- JSP頁面的靜態包含和動態包含使用方法