📄 userloadfilter.java
字号:
package web.util;
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 javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
public class UserLoadFilter implements Filter {
@Override
public void destroy() {
// TODO Auto-generated method stub
}
@Override
public void doFilter(ServletRequest arg0, ServletResponse arg1,
FilterChain arg2) throws IOException, ServletException {
HttpServletRequest hRequest = (HttpServletRequest) arg0;
HttpServletResponse hResponse = (HttpServletResponse) arg1;
HttpSession session = hRequest.getSession();
String isLogin = "";
try {
isLogin = (String) arg0.getAttribute("isLogin");
session.removeAttribute("isLogin");//clear session property:isLogin
session.invalidate();// session invalidate 会话失效
System.out.print(isLogin);
if (isLogin != null && isLogin.equals("true")) {
System.out.println("在LoginFilter中验证通过");
// 验证成功,继续处理
arg2.doFilter(arg0,arg1);
} else {
// 验证不成功,让用户登录。
hResponse.sendRedirect(hRequest.getContextPath()+"/"+"index.jsp");
System.out.println("被LoginFilter拦截一个未认证的请求");
}
} catch (Exception e) {
e.printStackTrace();
}
}
@Override
public void init(FilterConfig arg0) throws ServletException {
// TODO Auto-generated method stub
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -