⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 myfilter.java

📁 学生学籍管理系统 有三种权限
💻 JAVA
字号:
package filter;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class MyFilter implements Filter {

	private String targetURI = null;
	private final int NOT_PASS=0;
	private final int STUDENT=1;
	private final int ADMIN=2;
	private final int TEACHER=3;

	public void init(FilterConfig config) throws ServletException {
		targetURI = config.getInitParameter("targetURI");
	}

	public void doFilter(
			ServletRequest request,
			ServletResponse response,
			FilterChain chain) throws IOException, ServletException {
		HttpServletRequest httpRequest = (HttpServletRequest) request;
		HttpServletResponse httpResponse = (HttpServletResponse) response;
		HttpSession session = httpRequest.getSession(false);
		
		if(session != null){
			int flag = Integer.parseInt((String) session.getAttribute("flag"));
			if(check(flag,httpRequest.getRequestURI())){
				chain.doFilter(httpRequest, httpResponse);
				return;
			}	
		}
		httpRequest.getRequestDispatcher(targetURI).forward(httpRequest, httpResponse);
	}
	private boolean check(int flag,String url){
		
		if(url==null||flag==NOT_PASS)
			return false;
		if((url.indexOf("/admin/")!=-1)&&flag==ADMIN)
			return true;
		if((url.indexOf("/student/")!=-1)&&(flag==STUDENT))
			return true;
		if((url.indexOf("/teacher/")!=-1)&&(flag==TEACHER))
			return true;
		return false;
	}
	public void destroy(){
		this.targetURI = null;
	}

}

⌨️ 快捷键说明

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