小白學習的艱辛歷程!
我只說最新版本的eclipse自從servelt3.0以后 servelt 和filter 都不用到web.xml中配置,個人對servelt和filter理解不太深入,但是自從servelt3.0以后,你建立的servelt是不用自己配置的,自動給你配置好了(當然你建立的時候要用eclipse中的新建servelt不是你自己建立一個類再繼承servelt中的方法!)filter也不需要再web.xml中配置,只需在你建立的filter文件里面配置...
怎么配置關鍵如下::
@WebFilter(asyncSupported = true, urlPatterns = { "/loginfilter","/succ.jsp"," 這里可以寫你要過濾的頁面 " })
如果你是3.0以后的版本在開始可以看到這幾句話!URLpatterns后面寫你要過濾的頁面一定要注意格式(我發現不管你建立多少級文件夾,只要寫你要過濾的文件名和一個斜杠就行,就可以識別,我是不大懂,,哈哈哈)
后面的dofilter方法如下
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { // TODO Auto-generated method stub // place your code here HttpServletRequest httpRequest=(HttpServletRequest)request; HttpServletResponse httpResponse=(HttpServletResponse)response; HttpSession session=httpRequest.getSession();//我這里前面用了一個session來確定用戶是否登錄!!在這里得到其中的值,如果不為空就可以跳轉!! if(session.getAttribute("succe")!=null){ System.out.println("這個只想了一次"); chain.doFilter(request, response);//放開可以通行 } else{ System.out.println("頁面重定向用了一次");httpResponse.sendRedirect("你需要重定向的頁面");//這里跳轉你需要的登錄界面之類的 } }
當然這個我百度了一會,看了好多大佬的博客,感謝他們 自己又研究了一下---分享一下心得!