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万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章