过滤器配置

在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);
        }
    }
 }
阅读更多
版权声明: https://blog.csdn.net/m_future1993/article/details/51564023
文章标签: url
个人分类: 功能
上一篇Seevlet注解
下一篇数据库 连接池、缓冲池(定义、原理)
想对作者说点什么? 我来说一句

Java中配置过滤器

2010年08月24日 947B 下载

没有更多推荐了,返回首页

关闭
关闭