requestdispatcher.forward 和response的sendredirect的路径问题

来源:互联网 发布:阿里云域名解析 chame 编辑:程序博客网 时间:2024/05/02 05:06

今天学习了张龙老师的 <深度剖析过滤器的机制及其在实际开发中的应用场景_01.wmv> 中间代码出现的一些问题视频里面都解决了

后来无意间访问了" http://localhost:8080/javaWeb/session/index.jsp "页面,结果链接转到了" http://localhost:8080/javaWeb/session/login.jsp "页面(这两个页面时在学习session的时候的)

此时的LoginFilter里面的对未登录的重定向代码是: resp.sendRedirect("login.jsp");

在访问 http://localhost:8080/javaWeb/filter/index.jsp 时正如预期的一样 跳到了 http://localhost:8080/javaWeb/filter/login.jsp 页面

为什么访问" http://localhost:8080/javaWeb/session/index.jsp "页面,却转到了" http://localhost:8080/javaWeb/session/login.jsp "页面了?

后来我在网上查了一下:

http://jorton468.blog.163.com/blog/static/72588135201101711810508/

"绝对路径:response.sendRedirect("http://www.brainysoftware.com")发送至http://www.brainysoftware.com

根路径:response.sendRedirect("/ooo")发送至http://localhost:8080/ooo
相对路径:response.sendRedirect("ooo")发送至http://localhost:8080/Test/ggg/ooo。 
"

是不是 resp.sendRedirect("login.jsp"); 用了相对于上次请求的路径来跳转的啊???    

上次访问在session文件夹,这次就在session文件夹下找login.jsp页面?

后来我用了根路径   resp.sendRedirect("/javaWeb/filter/login.jsp");  这样乱跳的问题就没出现了

不过,表示上面的疑问还是没有确定

0 0
原创粉丝点击