📄 adminfilter.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.Date;
public class AdminFilter 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();
Date date=new Date();
String datetime=date.toLocaleString();
String ip=req.getRemoteAddr();
String type="";
if(session.getAttribute("AdminType")!=null)
type=(String)session.getAttribute("AdminType");
if(ip.equals(adminIP)&&type.equals("admin"))
{
//向日志文件写入访问信息
filterConfig.getServletContext().log
(datetime+ "用户访问的URL: "+req.getRequestURL()+"--IP:"+ip);
//通过,继续处理。
chain.doFilter(request,response);
}
else
{
filterConfig.getServletContext().log
(datetime+ "用户访问的URL失败: "+req.getRequestURL()+"--IP:"+ip);
res.sendRedirect(Log_Page);
}
}
public void destroy()
{
this.adminIP = null;
this.Log_Page = null;
this.filterConfig = null;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -