Filter过滤器会捕获你要进入的jsp页面再进入之前需要先进入这个过滤器:
-----------------------------------------------------------------------------------------------------------------------------
@WebFilter( "/admin/*") public class LoginFilter implements Filter { public void destroy() { } public void doFilter(ServletRequest req, ServletResponse resp, FilterChain chain) throws ServletException, IOException { HttpServletRequest request=(HttpServletRequest) req; HttpServletResponse response=(HttpServletResponse) resp; String url=request.getRequestURI(); System.out.println("请求的URI是:"+url); UserInfo u=(UserInfo) request.getSession().getAttribute("u"); if(u==null){ System.out.println("u为空,需要进行登录"); response.sendRedirect("../index.jsp"); }else{ System.out.println("已登录,进行下一步"); chain.doFilter(req,resp); } } public void init(FilterConfig config) throws ServletException { } }
-----------------------------------------------------------------------------------------------------------------------------
我的web内容如下:
index.jsp页面:
如果你没有登录直接跳转到了其他的页面,过滤器会拦截,然后判断如果已经登陆了则正常跳转,如果没有登录则跳转回登陆页面。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)