filterservlet.java

来自「用myeclipse开发的一个BBS论坛系统的源代码。大家可以看看。」· Java 代码 · 共 52 行

JAVA
52
字号
package cn.edu.rjxy.servlet;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;

public class FilterServlet extends HttpServlet implements Filter {
  private FilterConfig filterConfig;
  private static final String CONTENT_TYPE = "text/html; charset=GBK";
  //Handle the passed-in FilterConfig
  public void init(FilterConfig filterConfig) throws ServletException {
    this.filterConfig = filterConfig;
  }

  //Process the request/response pair
  public void doFilter(ServletRequest request, ServletResponse response, FilterChain filterChain) 
  {
    try
    {
      HttpServletRequest httpRequest=(HttpServletRequest)request;
      HttpSession session=httpRequest.getSession();
      if(session.getAttribute("userName")!=null)
      {
          filterChain.doFilter(request, response);
      }
      else
      {
          HttpServletResponse httpResponse=(HttpServletResponse)response;
          httpResponse.setContentType(CONTENT_TYPE);
          PrintWriter out=httpResponse.getWriter();
          out.print("<script language=\"JavaScript\">");
          out.print("alert(\"您没有登录,因此没有权利访问该资源\");");
          String jumppage="/forum/index.jsp";
          out.print("window.location.href=\""+jumppage+"\";");
          out.print("</script>");
          //httpResponse.sendRedirect("../index.jsp");
          out.flush();
      }
    }
    catch(ServletException sx) {
      filterConfig.getServletContext().log(sx.getMessage());
    }
    catch(IOException iox) {
      filterConfig.getServletContext().log(iox.getMessage());
    }
  }
  //Clean up resources
  public void destroy() {
  }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?