码迷,mamicode.com
首页 > Web开发 > 详细

jsp 表单提交,request.getRequestDispatcher方法 及 response.sendRedirect 路径问题

时间:2014-08-01 15:29:51      阅读:344      评论:0      收藏:0      [点我收藏+]

标签:使用   os   io   文件   数据   for   问题   cti   

在jsp页面中,等提交表单数据时,最好用觉得路径。

写法如下:

 

<form action ="<%=request.getContextPath()%>/do_login.jsp" method="post">

其中 request.getContextPath() 方法是取得当前项目的根目录位置。

这种用法叫做 “绝对路径” 使用绝对路径的好处是不太容易出错。缺点是目标路径字符串容易写的很长(如果目录层数过深的话)。如果使用相对路径,有时路径中免不了出现(..)上层目录,(../..)上层目录的上层目录这种写法。

这种写法容易引起逻辑上的混乱,如 :<form action ="../do/do_login.jsp" method="post">

当点号出现一次两次时还是可以接受的。但如果目录的层数过深,那这种写法就容易引起逻辑的混乱。

同理,在使用  response.sendRedirect() 方法实现客户端跳转时,也建议使用绝对路径。

 

 

但是当使用  request.getRequestDispatcher()方法实现服务器端跳转时,情况有些许的不同。这个方法使用的是相对路径。

但是我们同样也是可以使用觉得路径的。如:request.getRequestDispatcher("/result/success.jsp");

整个字符串的最前面的 ”/“ 就代表了项目的绝对路径。接着我们就可以用统一的 ”绝对路径写法“来实现跳转了。

 

 

还有一个就是servlet在web.xml文件中进行映射时使用的 <url-pattern> 进行逻辑地址映射是,也要使用绝对路径。

如 :<url-pattern>/login.do</url-pattern>

 

jsp 表单提交,request.getRequestDispatcher方法 及 response.sendRedirect 路径问题,布布扣,bubuko.com

jsp 表单提交,request.getRequestDispatcher方法 及 response.sendRedirect 路径问题

标签:使用   os   io   文件   数据   for   问题   cti   

原文地址:http://www.cnblogs.com/qufanblog/p/3884832.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!