jsp链接路径的学习

来源:互联网 发布:彩票大数据分析 编辑:程序博客网 时间:2024/06/05 17:54

首先分析第一种情况,<head></head>标签里面没有<base href="<%=basePath%>">这样的一个标签:

首先,当前页面路径为http://localhost:8080/StrutsDemo/path/path

1.如果超链接为

返回的结果为

说明:因为前一网页的路径为http://localhost:8080/StrutsDemo/path/path.

对于<a href=”index.jsp”></a>来说,它会在当前路径下进行查找是否有index.jsp这个文件。所以其返回路径如上。

2.如果超链接为

返回的结果为

因为它就是在Tomcat服务器根路径开始查找index.jsp文件

3.如果超链接为

返回的结果为



第二种情况,

如果在jsp文件中存在下面的代码:

<%

String path = request.getContextPath();

StrinbasePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

%>

<head></head>里有如下标签

<base href="<%=basePath%>"> 

1.如果超链接为

返回的结果为

为什么会有这样的一个效果呢?因为存在这个<base>标签后,当前所有页面的链接其实都是以此为基础的。比如:

页面如下所示:

所以index.jsp文件的链接就应该为http://localhost:8080/StrutsDemo/index.jsp

2.如果超链接为

返回的结果为

3.如果超链接为:

则返回的结果为

总结:个人觉得对于链接路径的写法最好写成一个第三种方式,这样避免出错的几率也是相对来说小一点,而且这种写法也是更为的标准。

0 0
原创粉丝点击