java[Web]中相对路径,绝对路径问题总结.docVIP

java[Web]中相对路径,绝对路径问题总结.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
java[Web]中相对路径,绝对路径问题总结

1.基本概念的理解   绝对路径:绝对路径就是你的主页上的文件或目录在硬盘上真正的路径,(URL和物理路径)例如: C:\xyz\test.txt 代表了test.txt文件的绝对路径。/index.htm也代表了一个 URL绝对路径。   相对路径:相对与某个基准目录的路径。包含Web的相对路径(HTML中的相对目录),例如:在 Servlet中,/代表Web应用的跟目录。和物理路径的相对表示。例如:./ 代表当前目录, ../代表上级目录。这种类似的表示,也是属于相对路径。 另外关于URI,URL,URN等内容,请参考RFC相关文档标准。 RFC 2396: Uniform Resource Identifiers (URI): Generic Syntax, (/rfc/rfc2396.txt) 2.关于JSP/Servlet中的相对路径和绝对路径。 2.1服务器端的地址    服务器端的相对地址指的是相对于你的web应用的地址,这个??址是在服务器端解析的 (不同于html和javascript中的相对地址,他们是由客户端浏览器解析的)也就是说这时候 在jsp和servlet中的相对地址应该是相对于你的web应用,即相对于/webapp/的。   其用到的地方有: forward:servlet中的request.getRequestDispatcher(address);这个address是 在服务器端解析的,所以,你要forward到a.jsp应该这么写: request.getRequestDispatcher(“/user/a.jsp”)这个/相对于当前的web应用webapp, 其绝对地址就是:/webapp/user/a.jsp。 sendRedirect:在jsp中%response.sendRedirect(/rtccp/user/a.jsp);% 2.22、客户端的地址 ?????? 所有的html页面中的相对地址都是相对于服务器根目录(/)的, 而不是(跟目录下的该Web应用的目录)/webapp/的。 Html中的form表单的action属性的地址应该是相对于服务器根目录(/)的, 所以,如果提交到a.jsp为:action=/webapp/user/a.jsp或action=%=request.getContextPath()%/user/a.jsp;   提交到servlet为actiom=/webapp/handleservlet?   Javascript也是在客户端解析的,所以其相对路径和form表单一样。   因此,一般情况下,在JSP/HTML页面等引用的CSS,Javascript.Action等属性前面最好都加上 %=request.getContextPath()%,以确保所引用的文件都属于Web应用中的目录。 另外,应该尽量避免使用类似.,./,../../等类似的相对该文件位置的相对路径,这样 当文件移动时,很容易出问题。 3. JSP/Servlet中获得当前应用的相对路径和绝对路径 3.1 JSP中获得当前应用的相对路径和绝对路径 根目录所对应的绝对路径:request.getRequestURI() 文件的绝对路径???  :application.getRealPath(request.getRequestURI()); 当前web应用的绝对路径 :application.getRealPath(/); 取得请求文件的上层目录:new File(application.getRealPath(request.getRequestURI())).getParent() 3.2 Servlet中获得当前应用的相对路径和绝对路径 根目录所对应的绝对路径:request.getServletPath(); 文件的绝对路径??? :request.getSession().getServletContext().getRealPath (request.getRequestURI())?? 当前web应用的绝对路径 :servletConfig.getServletContext().getRealPath(/); ???? (ServletContext对象获得几种方式: ?????? javax.servlet.http.HttpSession.getServletContext() ?????? javax.servlet.jsp.PageContext.getServletContext() ?????? javax.servlet.Serv

文档评论(0)

185****7617 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档