在<head></head>中通常有如下代码:
<base href="<%=basePath%>">
base标记是一个基链接标记,是一个单标记。用以改变文件中所有连结标记的参数内定值。它只能应用于标记<head>与</head>之间。
你网页上的所有相对路径在链接时都将在前面加上基链接指向的地址。
例如:
<base href="http://www.baidu.com">,那你下面的href属性就会以你上面设的为基准,如:<a href="http://www.baidu.com/xxx.htm"></a>
你现在就只需要写<a href="xxx.htm"></a>
<base href="http://www.baidu.com" target="_blank">
<base href="_blank"> ,就是默认所有链接在新窗口打开。
<a href="xxx.htm" target="_self">xxx</a>
如果目标文件中的链接没有指定target属性,就用base标记中的target属性。
<%@ page language="java" import="java.util.*" pageEncoding="GB18030"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'T.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
路径问题:
<br><br>
request.getScheme(): <%= request.getScheme() %>
<br><br>
request.getServerName(): <%= request.getServerName() %>
<br><br>
request.getServerPort(): <%= request.getServerPort() %>
<br><br>
request.getContextPath(): <%= request.getContextPath() %>
<br><br>
basePath: <%= basePath %>
<br><br>
</body>
</html>
显示结果为: