关闭

过滤器配置

标签: url
98人阅读 评论(0) 收藏 举报
分类:

在web.xml里配置,截取url,然后进入LoginFilter

<filter>
    <filter-name>login</filter-name>
    <filter-class>model.LoginFilter</filter-class>
</filter>
<filter-mapping>
    <filter-name>login</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

LoginFilter

package model;

import java.io.IOException; 
::::::
import javax.servlet.http.HttpSession; 

public class LoginFilter implements Filter {

    @Override 
    public void doFilter(ServletRequest request, ServletResponse response, 
            FilterChain chain) throws IOException, ServletException {
        // 获得在下面代码中要用的request,response,session对象
        HttpServletRequest servletRequest = (HttpServletRequest) request; 
        HttpServletResponse servletResponse = (HttpServletResponse) response; 
        HttpSession session = servletRequest.getSession();
        // 获得用户请求的URI
        String path = servletRequest.getServletPath(); 
        // 无需过滤的:css,js,登录jsp,登录Servlet,wx开头的地址
        if(path.indexOf(".css") > 0|| path.indexOf(".js") > 0||path.equals("/index.jsp")||path.equals("/UserLogin")||path.indexOf("wx")>0) {

            chain.doFilter(servletRequest, servletResponse);
            return; 
        }
        // 从session里取教师信息
        Teacher user = (Teacher) servletRequest.getSession().getAttribute("loginUser"); 
            // 判断如果没有取到员工信息,就跳转到登陆页面
        if (user == null || "".equals(user)) { 
            // 跳转到登陆页面
            servletResponse.sendRedirect("/english/index.jsp");
        } else {
            // 已经登陆,继续此次请求
            chain.doFilter(request, response);
        }
    }
 }
0
0

猜你在找
【直播】机器学习&数据挖掘7周实训--韦玮
【套餐】系统集成项目管理工程师顺利通关--徐朋
【直播】3小时掌握Docker最佳实战-徐西宁
【套餐】机器学习系列套餐(算法+实战)--唐宇迪
【直播】计算机视觉原理及实战--屈教授
【套餐】微信订阅号+服务号Java版 v2.0--翟东平
【直播】机器学习之矩阵--黄博士
【套餐】微信订阅号+服务号Java版 v2.0--翟东平
【直播】机器学习之凸优化--马博士
【套餐】Javascript 设计模式实战--曾亮
查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:18350次
    • 积分:977
    • 等级:
    • 排名:千里之外
    • 原创:82篇
    • 转载:17篇
    • 译文:1篇
    • 评论:2条