1、jsp的絕對路徑
絕對路徑在復制jsp時不用修改路徑都會正常顯示,但是絕對路徑${pageContext.request.contextPath}只有jsp可以識別
例如:相對路徑:image/logo.jpg
絕對路徑:${pageContext.request.contextPath}/image/logo.jpg
代碼” ${pageContext.request.contextPath}”的作用是取出部署的應用程序名,這樣不管如何部署,所用路徑都是正確的。
2、jsp的相對路徑
相對路徑固然比較靈活,但是當我們復制jsp時有的路徑會變,這樣只能手動改路徑
3、訪問jsp的方式
(1)當jsp在WedRoot下不在WEB-INF里直接用路徑就可以訪問
(2)jsp在WEB-INF里直接用路徑不能訪問,本人的解決方式是利用Action進行訪問
例如:(1)在struts.xml里的代碼
<package name="index" extends="struts-default" namespace="/">
<action name="index" class="indexAction">
<result name="index">/WEB-INF/jsp/index.jsp</result>
</action>
</package>
(2)struts.xml中的action中的class在sping對應的xml里(applicationContext.xml)
<bean id="indexAction" class="com.zhuoshi.Action.indecAction" scope="prototype"></bean>
scope="prototype": spring 默認scope 是單例模式,這樣只會創建一個Action對象每次訪問都是同一個Action對象,數據不安全。struts2 是要求每次次訪問都對應不同的Action。 scope="prototype" 可以保證當有請求的時候都創建一個Action對象
