全部博文(2065)
分类: Java
2010-05-07 23:00:33
Jsp开发中的路径整理
开发环境:Resin + MyEclipse
1. 配置Resin的虚拟主机目录。配置文件如下
说明:我们站点访问地址为: 即可访问到.
2. 配置MyEclipse
配置好resin服务器地址。布置站点到resin上面去/
布置的时候选择Custom Location 即自定义放置位置。
选择好Deloy
Location位置。即定义的根目录D:\bjproj
此时我们再回来看D:\bjproj目录下面就多了几个文件了。此时如果我们修改MyEclipse里面的源文件的话相应的服务器端的脚本代码也会相应修改过来!
相应的访问URL值为:
3. 测试静态资源的路径
项目目录规划
TestPath/
Images/
Script/
Style
Admin/
Index.jsp
Login.jsp
注意静态的客户端的路径:应该尽量避免使用类似".","./","../../"等类似的相对该文件位置的相对路径。客户端的路径包括以上列举的几项
保证JSP页面里面我们要有:
<%
String path =
request.getContextPath();
String basePath =
request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
这句话的意思是返回当前站点的根目录:
相当于是基准目录。有了这个目录之后那其他的资源就可以写相对于此目录的相对目录了。客户端解析之后就成为一个绝对地址了!这样我就就不需 要使用. ../ ../../ 了!
相应的图片引用:
相应的JS引用与CSS引用
超链接的情况:
同级目录的引用:This is my JSP page.hello
上级目录的引用:This is my JSP page.hello
因为我们有基准链接地址。所以这个值其实是有相对目录的!
如果 是admin/ 目录下面现在有a.jsp b.jsp的话如果在a.jsp里面有一个链接想跳转到b.jsp的话还 必须要这样写:
This is
my JSP page.hello 一定要想到是相对于网站根目录的路径值了!
JS的路径即location.href=
外层的一个JSP里面有一个按钮一点想跳进到内层的一个JSP的话可以
也是相对于网站根目录来讲的!
内层的一个JSP做同样的操作
表示的是网站根目录下面的b.jsp了!
Form表单目录
<form action="/servlet/UserServlets" method="post">
<input name="name" >
<input type="submit"
value="ok">
form>
看 <form action="/servlet/UserServlets" method="post"> 并没有写网站的目录名称。只是相对于根目录来讲的。这个值其实就是web.xml里面的URI值了!
以上均是客户端的路径。现在来讲一下服务器端的路径
1、 include包含
<%@ include
file="/admin/a.jsp" %> 使用绝对路径与相对路径均可以!
绝对路径就是相对于网站根目录而言的。
服务器端:
response.sendRedirect("/admin/a.jsp");
结论:服务器端的路径我们可以定为统一使用相对于网站根目录的来处理了。
客户端的保持基准目录即可。