java請求路徑

2021-06-28 18:09:10 字數 2842 閱讀 5609

在寫程式時,想要獲取某個資源檔案,或想訪問某個

servlet

,如果路徑寫不對,就找不到該檔案,或訪問失敗。由此可見,路徑很重要。下面我們就來分析一下如何正確找到資源檔案及訪問

servlet。

1.servlet訪問路徑

servlet

的訪問路徑是在

web.xml

檔案中配置的,如下所示:

servlet

訪問路徑

servlet

訪問路徑有如下兩種書寫方式:

路徑以「

/」開頭

路徑以「

*「開頭

servlet

的訪問路徑要麼以「

/」開頭,要麼以「

*」開頭,但是在

servlet

中,現在很少使用「

*」開頭,多用來配置需要過濾的資源.

2.請求**和請求包含路徑

請求**和請求包含需要給出即將**和包含資源的路徑,例如:

request.getrequestdispatcher(

「/bservlet

」).forward(request,response)

,表示要**到

bservlet

。request

物件的getrequestdispatcher(string path)

方法的引數有如下兩種書寫方式: 以「

/」開頭:

相對當前專案路徑,即:

專案名,例如:

request.getrequestdispatcher(

「/bservlet」)

表示**或包含路徑為

專案名/bservlet

的servlet。

不以「/

」開頭:

相對當前

servlet

的路徑,例如:當前

servlet

是aservlet

,訪問它的路徑為

專案名/servlet/aservlet

,那麼request.getrequestdispatcher(

「bservlet」)

就相當於,**或包含路徑為

專案名/servlet/bservlet

的servlet。

以上兩種書寫方式中,以「

/」開頭的路徑是絕對路徑,不以「

/」開頭的路徑是相對路徑。為了以後的開發簡便,建議大家採用第一種方式,即以「

/」開頭的路徑。

3.重定向路徑

進行重定向時,需要給出將要重定向的資源的路徑,例如:

response.sendredirect(

「/example/bservlet」)

,表示重定向到

example

專案中的訪問路徑為「

/bservlet

」的servlet。

重定向中的路徑是客戶端路徑,只要是客戶端路徑都需要加上專案名,否則找不到將要訪問的資源。重定向路徑有以下要求:

路徑要以「

/」開頭 以「

/」開頭,相對當前主機,即

,所以路徑上要加上專案名,如:

response.sendredirect(

「/example/servlet」)

,對應的路徑就是:

4.頁面中超連結和表單路徑

頁面中的超連結和表單路徑和重定向路徑一樣,也是客戶端路徑,因此路徑中要加上專案名。例如:

如果超連結或者表單路徑中沒有加上專案名,如:

,並且沒有以「

/」開頭,那麼就是相對路徑,相對於當前頁面所在路徑。例如,超連結所在頁面是

index.jsp

,那麼index.jsp

頁面的路徑就是:

專案名/aservlet

。如果是這樣就不存在問題,但是如果頁面並不是在應用的根目錄下,而是根目錄下的乙個目錄中,例如

html

目錄中,那麼

index.jsp

的訪問路徑就應該是:

專案名/html

,那麼再使用

中的路徑就會出現問題,所以建議大家使用絕對路徑。

5.servletcontext獲取資源路徑

servletcontext

獲取資源路徑使用的方式是

getrealpath(string path)

,該方法獲取的是應用發布到

tomcat

安裝目錄下的

目錄中的根目錄,如:

servletcontext.getrealpath(「/

」)返回的路徑就是

專案名。具體內容請參考

servletcontext

讀取web

應用中的資源檔案

java獲取請求路徑資訊

記錄一下常用路徑資訊的獲取 測試的請求url,get方法 獲取請求方法 request.getmethod 返回 get 獲取請求協議 request.getscheme 返回 http 獲取請求網域名稱 ip位址 request.getservername 返回 localhost 獲取請求埠號 ...

請求路徑問題

訪問路徑與資源名稱 通常的url資源請求路徑由兩部分構成 訪問路徑與資源名稱。資源名稱指的是要訪問資源的直接名稱,如 show.jsp,或與要訪問資源存在對映關係的間接路徑,如show.do 而訪問路徑,則是通過該路徑則可以定位到指定的資源,即在url資源訪問路徑中除了資源名稱以外的其他部分。hel...

Servlet請求資源路徑

servlet容器如何處理請求資源路徑 比如,在瀏覽器位址列輸入http ip port web04 2 abc.html。瀏覽器會將 web04 2 abc.html 作為請求資源路徑放到請求資料報裡面,傳送給容器。容器收到請求資料報以後 step1,依據應用名 web04 2 找到應用所在的資料...