小白学习的艰辛历程!
我只说最新版本的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("你需要重定向的页面");//这里跳转你需要的登录界面之类的 } }
当然这个我百度了一会,看了好多大佬的博客,感谢他们 自己又研究了一下---分享一下心得!