一、現象與概念
1. 問題
在Servlet轉發到JSP頁面時,此時瀏覽器地址欄上顯示的是Servlet的路徑,而若JSP頁面的超鏈接還是相對于該JSP頁面的地址且該Servlet和該JSP頁面不在同一個文件夾下時,則會出現路徑混亂問題。
2. 絕對路徑概念
相對于contextPath(當前Web應用的上下文)的路徑。
解決方案:超鏈接用絕對路徑而不是相對路徑。若/代表的是站點的根目錄,在其前面加上contextPath。
a href="%= request.getContextPath() %>/TestServlet" rel="external nofollow" >To B/a>
二、JavaWeb開發中的'/'含義總結
1. 當前Web應用的根路徑
'/'代表http://localhost:8080/contextPath/ :由Servlet來處理的地址
1)轉發:request.getRequestDispatcher("/path/b.jsp").forword(request, response);
2)web.xml文件中映射Servlet訪問路徑
servlet-mapping>
servlet-name>TestServlet/servlet-name>
url-pattern>/TestServlet/url-pattern>
/servlet-mapping>
3)各種定制標簽中的'/'。
2. Web站點的根路徑
'/'代表http://localhost:8080/ :由瀏覽器來處理的地址
1)超鏈接:a href="/TestServlet" rel="external nofollow" >To B/a>
2)form標簽中的action:form action="/b.jsp">
3)重定向:response.sendRedirect("/b.jsp");
以上這篇淺談Servlet轉發到JSP頁面的路徑問題(必看)就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
您可能感興趣的文章:- Java,JSP,Servlet獲取當前工程路徑(絕對路徑)問題解析
- JSP 開發之THE SERVLET NAME ALREADY EXISTS.解決方法
- JSP中通過Servlet 將服務器硬盤圖片并展示到瀏覽器
- Jsp+Servlet實現購物車功能
- JSP 開發之Servlet解決網頁緩存問題
- JSP 開發之servlet中調用注入spring管理的dao
- JSP開發Servlet重寫init()方法實例詳解
- JSP 中Servlet的自己實現