javascript
从0开始学Java——JSPServlet——HttpServletRequest相关的几个路径信息
在HttpServletRequest中有幾個(gè)獲取路徑的接口:getRequestURI/getContextPath/getServletPath/getPathInfo
這些接口互相之間有什么區(qū)別,通過(guò)下面這段代碼就可以分辨清楚了:
1 @WebServlet("/hello.view") 2 public class FirstServlet extends HttpServlet { 3 /*....*/ 4 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 5 // TODO Auto-generated method stub 6 response.setContentType("text/html;charset=UTF-8"); 7 PrintWriter out = response.getWriter(); 8 String name = request.getParameter("name"); 9 out.println("<html>"); 10 out.println("<head>"); 11 out.println("<title>Hello servlet </title>"); 12 out.println("</head>"); 13 out.println("<body>");15 out.println("<br>requestUri: " + request.getRequestURI()); 16 out.println("<br>contextPath: " + request.getContextPath()); 17 out.println("<br>servletPath: " + request.getServletPath()); 18 out.println("<br>pathInfo: " + request.getPathInfo()); 19 out.println("</body>"); 20 out.println("</html>"); 21 out.close(); 22 } 23 /*....*/這個(gè)項(xiàng)目的名稱(chēng)是FirstServlet,運(yùn)行之后其輸出內(nèi)容如下:
requestUri: /FirstServlet/hello.view ,這個(gè)相當(dāng)于是當(dāng)前頁(yè)面的全路徑,但是不包括url中參數(shù)信息。
contextPath: /FirstServlet ,這個(gè)就相當(dāng)于iis中的虛擬目錄名稱(chēng)
servletPath: /hello.view ,這個(gè)其實(shí)就是頁(yè)面的名稱(chēng)
pathInfo: null,這個(gè)其實(shí)就是requestUri - contextPath - servletPath,也就是如果該servlet是在某個(gè)子目錄下,那么這里顯示的就是那個(gè)子目錄名稱(chēng)。
轉(zhuǎn)載于:https://www.cnblogs.com/strinkbug/p/4885421.html
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的从0开始学Java——JSPServlet——HttpServletRequest相关的几个路径信息的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 关于码云开源项目SpringBootAd
- 下一篇: gradle idea java ssm