loginfilter.java

来自「简单的用户管理」· Java 代码 · 共 46 行

JAVA
46
字号
package com.howeisoft.ums.util;

import java.io.IOException;

import javax.servlet.FilterChain;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

public class LoginFilter extends HttpFilter {
	public void doFilter(HttpServletRequest request,
			HttpServletResponse response, FilterChain chain)
			throws ServletException, IOException {
		HttpSession session = request.getSession(false);
		String path = request.getServletPath();
//		path = path.substring(0, path.indexOf("."));
//		if (session.getAttribute("u_name") == null && !path.equals("/login")) {
//			response.sendRedirect(request.getContextPath()+"/login.jsp");
//			return;
//		} else {
//			chain.doFilter(request, response);
//		}
		
		if(path.startsWith("/login"))
	    {
	      chain.doFilter(request, response);
	      return;
	    }
	    
	    if(session == null)
	    {
	      response.sendRedirect(request.getContextPath()+"/login.jsp");
	      return;
	    }
	    
	    if(session.getAttribute("u_name") == null)
	    {
	      response.sendRedirect(request.getContextPath()+"/login.jsp");
	      return;
	    }
	    
	    chain.doFilter(request, response);
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?