struts2 中文件的位置问题
开发情况下,js文件,模板文件等不是很重要的文件一般放在WebRoot根目录下,
这种情况下的模板文件中添加 css或者js 文件时是相对文件自身添加的,必要时可以通过..来返回到WebRoot根目录,例如:
WebRoot目录下有个 template目录,里面是一些模板文件html等,在这些html文件中添加js或css文件时,这样添加:
<script type="text/javascript" src="../js/xx.js"></script>
<link rel="stylesheet" type="text/css" href="../css/xx.css"/>
重要的jsp文件+html文件一般放在WEB-INF目录下,
这类文件中添加js或css文件时,直接添加就行(是相对根目录添加的,不是相对自己所在目录添加de),例如:
<script type="text/javascript" src="js/xx.js"></script>
<link rel="stylesheet" type="text/css" href="css/xx.css"/>
通过 <%@ include file="" %>或者 <jsp:include page="">引入是相对自身引入文件(WEB-INF目录下的文件)
通过<iframe name="hello" id="ok" src="hello.jsp" style="width:100%;height:100%;border:0"></iframe> 引入的src地址是绝对地址(WebRoot根目录)
WEB-INF目录下的文件相互访问时,是相对访问的,例如:
WEB-INF目录下有两个目录jsp(包含 test.jsp) + test(包含hello.jsp),这时,想要在test.jsp中引用hello.jsp时,需要通过相对位置来引入 ,如:
<jsp:include page="../test/hello.jsp"/>
<%@ include file="../test/hello.jsp" %>(这种情况下添加时,可能需要去掉jsp文件头部的path等path变量,虽然不知道为什么)
WEB-INF目录下的html文件引入 html / jsp 文件是相对项目根目录引用的,有点不同啊,比如:
<div style="width:1000px;height:700px;">
<iframe name="hello" id="ok" src="template/packet_information.html" style="width:100%;height:100%;border:0"></iframe>
</div>
其中,template目录是WebRoot目录下的子目录
iframe 引用文件是相对WebRoot根目录的