在jsp中經常會遇到路徑的問題,出現404的錯誤或者是無法顯示.
這個問題可以從以下幾個方面來解決:
1 鏈結或表單提交的路徑
2 重定向和**的路徑
3 在myeclipse有jsp的兩種模板advanced 和 base templates的路徑問題
以下為解決之道
1 表單提交和鏈結都是從客戶端請求請求而來
/指的tomcat的根目錄,寫絕對路徑應該寫成"/當前web程式根名稱/資源名" 如"/webmodule1/jsp1.jsp","/bbs/servlet/myservlet"
2 重定向和**的路徑問題
寫相對路徑重定向和**沒有區別
重定向response.sendredirect("")是伺服器向客戶端傳送乙個請求頭資訊,由客戶端再請求一次伺服器.因此情況同上述1的一樣,
**是在伺服器內部進行的,寫絕對路徑/開頭指的是當前的web應用程式.絕對路徑寫法就是"/jsp1.jsp"或"/servlet/myservlet"
總結:以上兩點要注意是區分是從伺服器外的請求,還在是內部**,從伺服器外的請求,從tomcat根寫起(就是要包括當前web的根),是伺服器內部的**,很簡單了,因為在當前伺服器內,/寫起指的就是當前web的根.
3 在myeclispe中的jsp的兩種模板,一種是advanced,一種是basic
兩者的區別也會涉及到路徑問題,如的路徑,鏈結的路徑
advanced template中頁面的**多了以下**:
<%
string path = request.getcontextpath();
string basepath = request.getscheme()+"://"+request.getservername()+":"+request.getserverport()+path+"/";
%>
">
其中">必須放在中
這段**的作用是設定基礎路徑的,basepath為變數.標籤的用處是解決程式設計時候的相對路徑問題.
按以上方法可解決所有的路徑問題.
jsp中的路徑問題
在學jsp的時候我每次都遇到路徑的問題,每次都不能夠說100 的把這搞定,這讓我很煩惱,今天下午花了點時間來把路徑問題整理了下。一 首先我們在載入專案 我的專案名稱是finalexam 是的路徑是http localhost 8080 finalexam 注意著後面是有乙個反斜槓的 讓後我們談下 相...
jsp中關於路徑的問題
絕對路徑 是從碟符開始的路徑,如 c windows system32 cmd.exe相對路徑 是從當前路徑開始的路徑,假如當前路徑為c windows 要描述上述路徑,只需輸入 system32 cmd.exe 實際上,嚴格的相對路徑寫法應為 system32 cmd.exe其中,表示當前路徑,在...
jsp檔案中的路徑問題
最近在寫乙個oa系統,在資源的路徑問題上面出現了一點問題,使用相對路徑的話不利於檔案的改動,所以使用了絕對路徑來寫。在jsp檔案中 string path request.getcontextpath 表示的是獲取所部署的應用的名字 在el表示式中 是通過 get方法去取的,先pagecontext...