日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

JavaWeb相对路径如何使用

發(fā)布時(shí)間:2023/12/15 综合教程 26 生活家
生活随笔 收集整理的這篇文章主要介紹了 JavaWeb相对路径如何使用 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

這篇文章主要講解了“JavaWeb相對(duì)路徑如何使用”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“JavaWeb相對(duì)路徑如何使用”吧!

1.jsp或者h(yuǎn)tml頁面中的相對(duì)路徑

在jsp或者h(yuǎn)tml頁面中有很對(duì)標(biāo)簽涉及到標(biāo)簽的引用

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

這些標(biāo)簽的資源我們一般都會(huì)使用相對(duì)路徑,而且這些資源都是在客戶端進(jìn)行解析的。下面我們就用實(shí)際的例子去探究下怎么在jsp或者h(yuǎn)tml中正確使用相對(duì)路徑

這是文件的目錄結(jié)構(gòu),我們?cè)趐ath.jsp寫上<a href="pathHtml.html">jsp點(diǎn)我</a>這個(gè)標(biāo)簽我們?cè)趐athHtml.html中寫上<a href="path.jsp">html點(diǎn)我</a>這個(gè)標(biāo)簽。運(yùn)行WEB項(xiàng)目。

首先來到pathHtml.html頁面,點(diǎn)擊鏈接,結(jié)果如下:

正確的跳到了指定的頁面,接著點(diǎn)擊途中的鏈接,結(jié)果如下:

跳到了項(xiàng)目目錄下的pathHtml.html,當(dāng)然這個(gè)頁面是不存在的。為什么同樣的相對(duì)路徑指定格式,在JSP和HTML中的結(jié)果相差這么大,我們知道相對(duì)路徑最終還是要轉(zhuǎn)換為絕對(duì)路徑使用的,轉(zhuǎn)換成絕對(duì)路徑就必須知道相對(duì)路徑的基準(zhǔn)。所以我們看到上面的結(jié)果首先想到的是在默認(rèn)的HTML頁面和JSP頁面中相對(duì)路徑的基準(zhǔn)是不一樣的。 在HTML中base標(biāo)簽用來知道相對(duì)路徑的基準(zhǔn),在jsp中自動(dòng)給我們加了一個(gè)base標(biāo)簽并且指定基準(zhǔn)是項(xiàng)目路徑,所以我們無論在哪級(jí)目錄中寫的相對(duì)路徑都是基于項(xiàng)目路徑的。而默認(rèn)的HTML頁面沒有base標(biāo)簽,此時(shí)相對(duì)路徑就是相對(duì)當(dāng)前頁面的路徑。故得到上面的測(cè)試結(jié)果。

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

2.在java類中使用相對(duì)路徑

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

(1)servlet中的頁面跳轉(zhuǎn)指定頁面的相對(duì)路徑

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

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

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

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

頁面跳轉(zhuǎn)相對(duì)路徑也是相對(duì)當(dāng)前sevlet.

兩者的區(qū)別:

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

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

總結(jié)

以上是生活随笔為你收集整理的JavaWeb相对路径如何使用的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。