JavaWEB网页登陆过滤

来源:互联网 发布:陌陌滚刀软件安卓 编辑:程序博客网 时间:2024/04/30 10:35
package 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 javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;import dataBean.UserBean;//继承Filter接口public class LoginFilter implements Filter {/** * 描述:登录过滤,防止未登录直接访问系统网页 * */    public void destroy() {    }    public void doFilter(ServletRequest request, ServletResponse response,            FilterChain chain) throws IOException, ServletException {        HttpServletRequest servletRequest = (HttpServletRequest) request;        HttpServletResponse servletResponse = (HttpServletResponse) response;        HttpSession session = servletRequest.getSession();        // 获取访问系统的URI        String uri = servletRequest.getRequestURI().substring(                servletRequest.getContextPath().length());        //登录页无需过滤;        if (uri.indexOf("/Login.jsp") > -1) {            chain.doFilter(servletRequest, servletResponse);            return;        }        // 从session里取员工用户信息        String user = (String) session.getAttribute("user");        if (user == null || "".equals(user)) {            // 跳转到登陆页面            servletResponse.sendRedirect("/TS7000test/Login.jsp");        } else {            // 已经登陆,继续此次请求            chain.doFilter(request, response);        }    }    public void init(FilterConfig arg0) throws ServletException {        // TODO Auto-generated method stub    }}web.xml文件中添加配置标签<filter>         <filter-name>Login</filter-name>         <filter-class>filter.LoginFilter</filter-class></filter>     <filter-mapping>         <filter-name>Login</filter-name>          <url-pattern>/ProductInfo.jsp</url-pattern>          <url-pattern>/TestPage.jsp</url-pattern>          <url-pattern>/User.jsp</url-pattern>          <url-pattern>/Search.jsp</url-pattern>          <url-pattern>/FindUser.jsp</url-pattern> </filter-mapping>
0 0