package edu.sanyang.hr.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.annotation.WebFilter;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
//登录过滤器
@WebFilter("/*")
public class LoginFilter implements Filter {
@Override
public void doFilter(ServletRequest req, ServletResponse resp, FilterChain chain) throws IOException, ServletException {
HttpServletRequest request = (HttpServletRequest) req;
HttpServletResponse response = (HttpServletResponse) resp;
HttpSession session = request.getSession();
//获取session中作为判断的字段
String pwd = (String) session.getAttribute("pwd");
session.setMaxInactiveInterval(2*60);//设置单位为秒,设置为-1永不过期
//获得用户请求的路径
String path = request.getRequestURI();
//System.err.println("pwd------------"+pwd);
//System.err.println("path------------"+path);
if (path.contains("index.jsp")) {
if (pwd != null) {
chain.doFilter(request, response);
return;
}else if (pwd == null){
response.sendRedirect("/HrManagement/login.jsp");
return;
}
}else {
chain.doFilter(request, response);
}
}
@Override
public void init(FilterConfig fConfig) throws ServletException {
}
@Override
public void destroy() {
// TODO Auto-generated method stub
}
}
本人总结不喜勿喷!!
登录的过滤器Filter,没有登录不让直接访问主页
最新推荐文章于 2023-01-25 18:18:01 发布