java获取当前项目相对路径,在JAVA文件中获取该项目的相对路径
在JAVA文件中獲取該項(xiàng)目的相對(duì)路徑
1.基本概念的理解
絕對(duì)路徑:絕對(duì)路徑就是你的主頁(yè)上的文件或目錄在硬盤上真正的路徑,(URL和物理路徑)例如:
C:\xyz\test.txt 代表了test.txt文件的絕對(duì)路徑。http://www.sun.com/index.htm也代表了一個(gè)
URL絕對(duì)路徑。
相對(duì)路徑:相對(duì)與某個(gè)基準(zhǔn)目錄的路徑。包含Web的相對(duì)路徑(HTML中的相對(duì)目錄),例如:在
Servlet中,"/"代表Web應(yīng)用的跟目錄。和物理路徑的相對(duì)表示。例如:"./" 代表當(dāng)前目錄,
"../"代表上級(jí)目錄。這種類似的表示,也是屬于相對(duì)路徑。
另外關(guān)于URI,URL,URN等內(nèi)容,請(qǐng)參考RFC相關(guān)文檔標(biāo)準(zhǔn)。
RFC 2396: Uniform Resource Identifiers (URI): Generic Syntax,
(http://www.ietf.org/rfc/rfc2396.txt)
2.關(guān)于JSP/Servlet中的相對(duì)路徑和絕對(duì)路徑。
2.1服務(wù)器端的地址
服務(wù)器端的相對(duì)地址指的是相對(duì)于你的web應(yīng)用的地址,這個(gè)地址是在服務(wù)器端解析的
(不同于html和javascript中的相對(duì)地址,他們是由客戶端瀏覽器解析的)也就是說這時(shí)候
在jsp和servlet中的相對(duì)地址應(yīng)該是相對(duì)于你的web應(yīng)用,即相對(duì)于http://192.168.0.1/webapp/的。
其用到的地方有:
forward:servlet中的request.getRequestDispatcher(address);這個(gè)address是
在服務(wù)器端解析的,所以,你要forward到a.jsp應(yīng)該這么寫:
request.getRequestDispatcher(“/user/a.jsp”)這個(gè)/相對(duì)于當(dāng)前的web應(yīng)用webapp,
其絕對(duì)地址就是:http://192.168.0.1/webapp/user/a.jsp。
sendRedirect:在jsp中
2.22、客戶端的地址
所有的html頁(yè)面中的相對(duì)地址都是相對(duì)于服務(wù)器根目錄(http://192.168.0.1/)的,
而不是(跟目錄下的該Web應(yīng)用的目錄)http://192.168.0.1/webapp/的。
Html中的form表單的action屬性的地址應(yīng)該是相對(duì)于服務(wù)器根目錄(http://192.168.0.1/)的,
所以,如果提交到a.jsp為:action="/webapp/user/a.jsp"或action=""/user/a.jsp;
提交到servlet為actiom="/webapp/handleservlet"
Javascript也是在客戶端解析的,所以其相對(duì)路徑和form表單一樣。
因此,一般情況下,在JSP/HTML頁(yè)面等引用的CSS,Javascript.Action等屬性前面最好都加上
,以確保所引
總結(jié)
以上是生活随笔為你收集整理的java获取当前项目相对路径,在JAVA文件中获取该项目的相对路径的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java字数统计,求大神教我,java语
- 下一篇: cactus java,使用cactus