首先,在网络开发中,注意这里特别强调是在网络开发中,也就是我们用Servlet来处理网络应用的过程中:
地址最好以<强> "开头>强壮! ! !
以“/笨吩诓煌亩韵蠡蚍椒?标签中代表不同的相对根目录。区别在于编程者
如果是给服务器端使用的地址,“/贝淼鼻皐eb工程;
如果是给客户端浏览器使用的地址,“/贝矸衿髦械闹骰?或者表示服务器部署网页应用的根目录(如Tomcat的【webapps】目录)只
以下通过几个例子来说明:
1。
this.getServletContext () .getRealPath ("/index . jsp ");
在服务器端操作服务器中的资源,所以是给服务器使用的地址,表示该web工程下的指数。jsp。
2。
this.getServletContext () .getRequestDispatcher ("/index . jsp ");
3。
response.sendRedirect (/myservlet/index . jsp);
重定向需要配合响应头“位置”来将响应发给浏览器,再由浏览器来重新发送请求给重定向中的新URL,所以是给客户端浏览器使用的地址。【myservlet】为web应用名,存在于Tomcat的【webapps】目录下。
4。
response.getWriter () .write (“& lt;元http-equiv=八⑿隆蹦谌?3;url=/myservlet/index . jsp的祝辞”);
很明显这个将会给浏览器进行解析出这个HTML语言作为页面中的响应头,所以是给浏览器的地址,需要提供web应用名只
5。
& lt;形式action="/myservlet/servlet/ServletRegister”比; & lt;/form> >之前在浏览器中提交表单给服务器,是给浏览器的地址。
6。
https://www.yisu.com/zixun/& lt; a href="/myservlet/servlet/ServletRegister”> > >之前均为给浏览器的地址只
这里注意:对于Servlet这样的网络资源,路径都是以对外访问路径名(虚拟路径)为主(在web . xml文档中& lt; servlet-mapping>标签定义),所不同的是对于浏览器地址来说需要加网络上应用名。例:
对于服务器地址:
request.getRequestDispatcher (“/servlet/ServletDemo”)。提出(请求、响应); >之前对于客户端浏览器地址:
响应。sendRedirect (“/myservlet/servlet/ServletDemo”); >之前,另记:“/蓖ǔS糜诒硎拘槟獾刂?如URL地址,而“\”通常用于系统硬盘上的文件地址。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
web servlet之路径问题_动力节点Java学院整理