www.pudn.com > SSPP.rar > AdminFilter.java


package edu.neu.sspp.filter; 
 
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; 
import javax.servlet.http.HttpServletRequest; 
import javax.servlet.http.HttpServletResponse; 
 
import edu.neu.sspp.SSPPLogger; 
 
 
public class AdminFilter implements Filter{ 
 
	public void doFilter(ServletRequest request, ServletResponse response, 
			FilterChain chain)  
     
      throws ServletException, IOException { 
		 
    HttpServletRequest httpRequest = (HttpServletRequest) request; 
    HttpServletResponse httpResponse = (HttpServletResponse) response; 
 
		 
		if (httpRequest.getSession().getAttribute("login") == null || !httpRequest.getSession().getAttribute("login").equals("admin")) 
		{ 
			SSPPLogger.logWarn("非管理员用户越权操作" + "IP:" + request.getRemoteAddr()); 
			 
			httpResponse.sendRedirect(httpRequest.getContextPath() + "/error_page/error_500.jsp"); 
		} 
		else			 
		    
		    chain.doFilter(request, response); 
			return ; 
		 
	} 
 
	public void init(FilterConfig config) throws ServletException { 
	} 
 
	public void destroy() { 
	} 
 
	 
}