servlet過濾器的使用

實現一個過濾器需要兩個步驟:
實現 3 個方法
Ÿ初始化方法:表示的是過濾器初始化時的動作。 public void init(FilterConfig config) ;
Ÿ消亡方法:表示的是過濾器消亡時候的動作。 public void destroy() ;
過濾函數:表示的是過濾器過濾時的動作。 public voiddoFilter(ServletRequest request, ServletResponse response, FilterChain chain) ;
過濾器的配置有以下幾個步驟:
   用<filter-mapping>配置過濾器的映射 

      過濾所有文件

  <filter-mapping>

   <filter-name>FilterName</filter-name>

   <url-pattern>/*</url-pattern>

  </filter-mapping>

下面爲實例代碼:

package com.wjrong.filter;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.List;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

public class LoginServlet extends HttpServlet {
 
 public void doGet(HttpServletRequest request, HttpServletResponse response)
   throws ServletException, IOException {
           RequestDispatcher rd=null;
  String username=request.getParameter("uname");
  String userpass=request.getParameter("upass");
  
  if(username.equals("uname")&&userpass.equals("123")){
   //登錄成功後,爲了保存用戶登錄的狀態?
   HttpSession session= request.getSession();
       session.setAttribute("user", username);
    rd=request.getRequestDispatcher("/index.jsp");
  }else{
   rd=request.getRequestDispatcher("/login.jsp");
  }
  rd.forward(request, response);
 }

 public void doPost(HttpServletRequest request, HttpServletResponse response)
   throws ServletException, IOException {

        doGet(request,response);
 	}
}


發佈了32 篇原創文章 · 獲贊 17 · 訪問量 20萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章