📄 userfilter.java
字号:
package test;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.*;
import java.util.*;
public class UserFilter implements Filter
{
private FilterConfig filterConfig = null;
private String adminIP="";
private String Log_Page="../login.jsp";
public void init(FilterConfig filterConfig) throws ServletException
{
this.filterConfig = filterConfig;
//获取初始化参数
this.adminIP = filterConfig.getInitParameter("adminIP");
}
public void doFilter(ServletRequest request,
ServletResponse response,
FilterChain chain)
throws IOException, ServletException
{
HttpServletRequest req=(HttpServletRequest)request;
HttpServletResponse res=(HttpServletResponse)response;
HttpSession session=req.getSession();
String ip=req.getRemoteAddr();
String type="";
boolean flag1=true;
boolean flag2=true;
if(session.getAttribute("type")!=null)
type=(String)session.getAttribute("type");
if(!(type.equals("admin"))){
flag1=false;
}
if(!ip.equals(adminIP)){
session.invalidate();
flag2=false;
}
if(!(flag1&&flag2)){
res.sendRedirect(Log_Page);
}
chain.doFilter(request,response);
}
public void destroy()
{
this.adminIP = null;
this.filterConfig = null;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -