loginfilter.java

来自「学生考勤管理系统————分为课程选择」· Java 代码 · 共 47 行

JAVA
47
字号
package com.ccniit.kaoqin.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.http.HttpServletRequest;

import com.ccniit.kaoqin.db.teacher.Teacher;
//该filter类是来判断用户是否重复登录
public class LoginFilter implements Filter{
	String LOGIN_PAGE="/Login"; 
	 protected FilterConfig filterConfig; 

	public void destroy() {
		// TODO 自动生成方法存根
		
	}

	public void doFilter(ServletRequest arg0, ServletResponse arg1, FilterChain chain) throws IOException, ServletException {
		// TODO 自动生成方法存根
		
		HttpServletRequest request=(HttpServletRequest)arg0;
		Teacher teacher=(Teacher)request.getSession().getAttribute("teacher");
		String userName=request.getParameter("userName");
		if(teacher.getTeacher_name().equals(userName)){
			chain.doFilter(arg0, arg1);
			request.setAttribute("message","该用户已经登录");
			request.getRequestDispatcher("/index.jsp").forward(arg0, arg1);
			
		}else{
			request.getRequestDispatcher(LOGIN_PAGE).forward(arg0, arg1);
		}
		
	}

	public void init(FilterConfig arg0) throws ServletException {
		// TODO 自动生成方法存根
		
	}

}

⌨️ 快捷键说明

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