zoukankan      html  css  js  c++  java
  • j2ee中如何拦截jsp页面?

    加filter:

    public class RightFilter implements Filter {
        public void init(FilterConfig filterConfig) throws ServletException {
        }
    
        public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse,
                             FilterChain filterChain) throws IOException, ServletException {
            HttpServletRequest httpServletRequest = (HttpServletRequest) servletRequest;
            HttpServletResponse httpServletResponse = (HttpServletResponse) servletResponse;
            User user = (User) httpServletRequest.getSession(true).getAttribute("user");
            if (!isExcludePages(httpServletRequest.getRequestURI())) {
                if (user == null) {
                    httpServletResponse.sendRedirect(httpServletRequest.getContextPath() + "/login.jsp");
                    return;
                }
            }
            filterChain.doFilter(servletRequest, servletResponse);
        }
    
        private boolean isExcludePages(String url) {
            return url.indexOf("login.dhtml") != -1
                    || url.indexOf("logout.dhtml") != -1
                    || url.indexOf("login.jsp") != -1
                    || url.endsWith(".css")
                    || url.endsWith(".js")
                    || url.endsWith(".gif")
                    || url.endsWith(".jpg")
                    || url.endsWith(".png");
        }
    
        public void destroy() {
        }
    }

    需要在web.xml里面配置一下:

    <filter>
      <filter-name>rightFilter</filter-name> 
      <filter-class>com.xxx.filter.RightFilter</filter-class> 
      </filter>
    
    <filter-mapping>
            <filter-name>rightFilter</filter-name>
            <url-pattern>*.dhtml</url-pattern>
        </filter-mapping>
  • 相关阅读:
    第三次个人作业
    第二次结对作业
    第一次结对作业
    第二次编程作业
    第一次编程
    第一次博客作业
    个人总结
    第二次结对作业
    软件工程-个人总结
    第三次个人作业
  • 原文地址:https://www.cnblogs.com/wawahaha/p/4324973.html
Copyright © 2011-2022 走看看