JSP頁面中的${pageContext.request.contextPath }是什么意思?優缺點?


此答案為轉載過來的,我是作為筆記,如有侵權,請原諒;

優點:     它的作用是取出部署應用程序的名字,這樣不管如何部署,所用的路徑都是正確的。(得到的是一個絕對路徑)

缺點:其他工具無法正確解析它

什么是當前的項目名稱呢? 
假定你的web application 名稱為test,這個test就是當前的項目名稱,不過你在瀏覽器中輸入請求路徑時,如: 
http//:localhost:8080/test/hello.jsp 
${pageContext.request.contextPath}或<%request.getContextPath%>就是從這個請求路徑(URL)上截取(是截取)---->  /test   看清楚,前面是有"/",而這個“/”代表的是-->"http//:localhost:8080",看清楚這里是沒有"/"的! 
所以才有了網上那些文章寫的,如果我們: 
<form action="${pageContext.request.contextPath}/hello.jsp">這樣寫路徑永遠對,當然對了,因為你自己翻譯${pageContext.request.contextPath}/hello.jsp其中的含義,不就是 
http//:localhost:8080/test/hello.jsp  相當於你寫了一全路徑!當然前提是你的JSP頁面等等必須放置的位置正確才可以---->所以才說明路徑永遠正確 

為什么這么要做呢?因為學過一些MVC模式的程序員都知道,JSP的作用是用來顯示的(表現的),其他的作用最好不要在這個頁面上顯示,尤其是Java代碼!所以就用EL表達式來替代類似有“<%%>”這樣的代碼格式 
————————————————
版權聲明:本文為CSDN博主「宋先生的客棧」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/KO_612/article/details/96621521


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM