pollfilter.java

来自「近几年来」· Java 代码 · 共 37 行

JAVA
37
字号
package tarena.filter;

import java.io.IOException;
import java.util.Map;

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.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import tarena.util.ContextUtil;

public class PollFilter extends HttpServlet implements Filter {
	public void init(FilterConfig arg0) throws ServletException {
	}

	public void doFilter(ServletRequest arg0, ServletResponse arg1,
			FilterChain arg2) throws IOException, ServletException {
		HttpServletRequest request = (HttpServletRequest) arg0;
		HttpServletResponse response = (HttpServletResponse) arg1;
		ServletContext servletContext = request.getSession()
				.getServletContext();
		Map clientIPMap = (Map) servletContext
				.getAttribute(ContextUtil.CLIENT_IP_MAP);
		Boolean isPolled = (Boolean) clientIPMap.get(request.getRemoteAddr());
		if (isPolled == null)
			response.sendRedirect(request.getContextPath()
					+ ContextUtil.INDEX_PATH);
		else
			arg2.doFilter(arg0, arg1);
	}
}

⌨️ 快捷键说明

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