java Web 中相对路径绝对路径问题总结 1. 基本概念的理解绝对路径: 绝对路径就是你的主页上的文件或目录在硬盘上真正的路径, (URL 和物理路径) 例如: C:\xyz\ 代表了 文件的绝对路径。 也代表了一个 URL 绝对路径。相对路径:相对与某个基准目录的路径。包含 Web 的相对路径( HTML 中的相对目录),例如:在 Servlet 中, "/" 代表 Web 应用的跟目录。和物理路径的相对表示。例如: "./" 代表当前目录, "../" 代表上级目录。这种类似的表示,也是属于相对路径。另外关于 URI , URL,URN 等内容,请参考 RFC 相关文档标准。 RFC 2396: Uniform Resource Identifiers (URI): Generic Syntax, (/) 2. 关于 JSP/Servlet 中的相对路径和绝对路径。 服务器端的地址服务器端的相对地址指的是相对于你的 web 应用的地址,这个地址是在服务器端解析的(不同于 html 和 Javascript 中的相对地址, 他们是由客户端浏览器解析的)也就是说这时候在 jsp 和 servlet 中的相对地址应该是相对于你的 web 应用, 即相对于 / 的。其用到的地方有: forward : servlet 中的 (address); 这个 address 是在服务器端解析的,所以,你要 forward 到 应该这么写: ( “/user/ ”) 这个/ 相对于当前的 web 应用 webapp , 其绝对地址就是: 。 sendRedirect :在 jsp 中<%("/p/user/");%> 、客户端的地址所有的 html 页面中的相对地址都是相对于服务器根目录(/) 的, 而不是( 跟目录下的该 Web 应用的目录)/ 的。 Htm l中的 for m 表单的 actio n 属性的地址应该是相对于服务器根目录(/) 的, 所以,如果提交到 为: action = "/webapp/user/" 或 action="<%=()%>"/user/ ; 提交到 servlet 为 actiom = "/webapp/handleservlet" Javascript 也是在客户端解析的,所以其相对路径和 form 表单一样。因此,一般情况下,在 JSP/HTML 页面等引用的 CSS, 等属性前面最好都加上<%=()%>, 以确保所引用的文件都属于 Web 应用中的目录。另外
java Web 中相对路径绝对路径问题总结 来自淘豆网m.daumloan.com转载请标明出处.