欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Web应用中路径问题

程序员文章站 2022-05-09 23:37:46
...

绝对路径:指无法改变的路径,根据给出的路径可以准确定位的路径。(带访问协议的路径)
本地据对路径:带有盘符的路径。如:E:\BaiduNetdiskDownload(对于本地路径,其实质是省略了file协议,带协议实际路径为:file:///E:\BaiduNetdiskDownload)
网络绝对路径:带网络访问协议(如http)的路径。


相对路径:指参照路径的不同,给出路径的实际路径可以发生改变的路径。
双斜杠开头的相对路径根据路径所在文件的不同,分为两种:
(1)前台相对路径:由浏览器解析执行的代码中所包含的路径。前台相对路径的参照路径是web服务器的根路径(http://127.0.0.1:8080/
(2)后台相对路径:由服务器解析执行的代码及文件中所包含的路径。后台相对路径的参照路径是web应用的根路径(http://127.0.0.1:8080/application/
不以斜杠开头的相对路径:无论前后台路径,参照路径都是当前资源的访问路径,而不是资源保存路径。


web应用中,action=”test/login.acion”这种请求路径时,如果返回当前页面会出现浏览器路径显示重复或无法找到action路径问题发生(因为参照路径问题),有如下解决:
1、在test前加 /web应用名/
2、用EL获取上下文路径

${pageContext.request.contextPath }/test/login.acion

3、自定义路径,使action的路径访问参照这个basePath

<%
String path = request.getContextPath();
String basePath  = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

在< head>< /head>标签里加如下:

<base href="<%=basePath%>">