溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

JavaWeb相對路徑如何使用

發(fā)布時間:2022-09-26 13:46:22 來源:億速云 閱讀:130 作者:iii 欄目:互聯(lián)網(wǎng)科技

這篇文章主要講解了“JavaWeb相對路徑如何使用”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“JavaWeb相對路徑如何使用”吧!

1.jsp或者html頁面中的相對路徑

在jsp或者html頁面中有很對標簽涉及到標簽的引用

比如img,a,form,script,link等

這些標簽的資源我們一般都會使用相對路徑,而且這些資源都是在客戶端進行解析的。下面我們就用實際的例子去探究下怎么在jsp或者html中正確使用相對路徑

JavaWeb相對路徑如何使用

這是文件的目錄結構,我們在path.jsp寫上<a href="pathHtml.html">jsp點我</a>這個標簽我們在pathHtml.html中寫上<a href="path.jsp">html點我</a>這個標簽。運行WEB項目。

首先來到pathHtml.html頁面,點擊鏈接,結果如下:

JavaWeb相對路徑如何使用

正確的跳到了指定的頁面,接著點擊途中的鏈接,結果如下:

JavaWeb相對路徑如何使用

跳到了項目目錄下的pathHtml.html,當然這個頁面是不存在的。為什么同樣的相對路徑指定格式,在JSP和HTML中的結果相差這么大,我們知道相對路徑最終還是要轉換為絕對路徑使用的,轉換成絕對路徑就必須知道相對路徑的基準。所以我們看到上面的結果首先想到的是在默認的HTML頁面和JSP頁面中相對路徑的基準是不一樣的。 在HTML中base標簽用來知道相對路徑的基準,在jsp中自動給我們加了一個base標簽并且指定基準是項目路徑,所以我們無論在哪級目錄中寫的相對路徑都是基于項目路徑的。而默認的HTML頁面沒有base標簽,此時相對路徑就是相對當前頁面的路徑。故得到上面的測試結果。

所以我們?yōu)榱朔乐钩鲥e一般在JSP頁面中使用相對路徑前都加上request.getContextPath(),讓基準始終是項目路徑,當然jsp頁面中默認的base標簽已經(jīng)能達到上述的目的了。其他標簽相對路徑使用和上述一致,希望讀者自己動手驗證下。

2.在java類中使用相對路徑

在java類中包括各種servlet中使用相對路徑一般有兩種情況.

(1)servlet中的頁面跳轉指定頁面的相對路徑

(2)類中對資源的引用,即文件的讀寫

我們分別對這兩種情況探討一下怎么能正確的在JAVA類中使用相對路徑

我們知道在servlet中頁面跳轉有兩種方式,頁間跳轉和重定向。

重定向的相對路徑一定是相對于當前servlet的虛擬路徑的,這點的使用上可以把servelt看著一個html頁面在其中使用,相對路徑的規(guī)則和在上述的HTML頁面規(guī)則一致。

頁面跳轉相對路徑也是相對當前sevlet.

兩者的區(qū)別:

(1)原理上:重定向是客戶端請求,服務器返回重定向操作,客戶端執(zhí)行,頁面跳轉是服務器內部頁面或者servlet之間的跳轉。

(2)使用上:兩者的根目錄不同,重定向的根目錄是服務器地址這點和html文件一致,一般只要是客戶端解析的地址根目錄都是相對服務器;而頁面跳轉根目錄是項目路徑,這個區(qū)別很重要。

感謝各位的閱讀,以上就是“JavaWeb相對路徑如何使用”的內容了,經(jīng)過本文的學習后,相信大家對JavaWeb相對路徑如何使用這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

AI