标签:
Filter是Java Web中用于禁止浏览器在未登录的情况下访问内部网址。
用法就不说了,看了下网上的用法基本都是贴的李刚的那本J2EE书上的代码。
需要注意的是,如果你直接设置 <url-pattern>/*</url-pattern>, 那么你的CSS和JS文件也会一同被过滤掉。
那么怎么样解决呢?网上又说建一个jspPage的文件夹把jsp页面放进去然后 设置 <url-pattern>jspPage/*</url-pattern>,我想说这个方法对于简单的页面跳转也许可以,但是遇到带有导航栏的网站时调整会出现混乱,不可取。
建议做法是:改Filter文件里的代码
if( session.getAttribute("user")== null && !requestPath.endsWith(loginPage) && !requestPath.endsWith(LoginServlet) && !requestPath.endsWith(".css")&&!requestPath.endsWith(".js") ){
request.setAttribute("loginError" , "您还没有登录呢");
request.getRequestDispatcher(loginPage).forward(request, response);
}
标签:
原文地址:http://blog.csdn.net/jkxqj/article/details/43807287