<%=request.getContextPath()%>是解決相對路徑的問題,可返回站點的根路徑。
<a href="<%=request.getContextPath()%>/XXX.jsp"> //這樣獲得的是絕對路徑
<a href="XXX.jsp"> //這樣獲得的是相對路徑
<a href="<%=request.getContextPath()%>/XXXX.jsp"> 能夠更有效的防治連接的失效。
request.getContextPath()得到的是項目的名字,如果項目為根目錄,則得到一個"",即空的字條串, 如果項目為dzjc,<%=request.getContextPath()% >/ 將得到dzjc/,服務器端的路徑則會自動加上, <a href="XXX.jsp"> 應該就是指當前路徑下的這個xxx.jsp頁面,有時候也可以在head裡設置html:base來解決路徑的問題,不過用的最多的還是request.getContextPath。
如果想得到工程文件的實際物理路徑,可通過:<%=request.getRealPath("/")%>,這樣頁面就會輸出:d:\web\
現在request.getRealPath("") 這個方法已經不推薦使用了,可以使用
this.getServletContext().getRealPath("/") 得到工程文件的實際物理路徑,也就是絕對地址獲得uri路徑的方法這個方法是
HttpServletRequest的裝飾類HttpServletRequestWrapper中方法(運用的是裝飾模式)String url=request.getRequestURI();
System.out.println(url); //輸出 /2/LoginServlet 項目名稱+當前執行頁面的url
以上這篇jsp中獲得路徑的兩種方法和獲得url路徑的方法(推薦)就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持。