jsp中的绝对路径、相对路径和访问jsp的方式
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对象