1.相对路径和绝对路径
假设当前路径为http://localhost/test
转发时一般采用相对路径,即相对应当前目录而言,例如request.getRequstDispather(“hello/index.jsp”).forward(request,response),此时路径为http://localhost/test/hello/index.jsp
重定向时一般采用绝对路径,例如response.sendRedirect(“hello/index.jsp”),此时路径为http://localhost/hello/index.jsp
2.解决jsp路径问题方案
利用html中的<base>标签:
a.base 元素可规定页面中所有链接的基准 URL
b.默认情况下,页面中的链接(包括样式表、脚本和图像的地址)都是相对于当前页面的地址(即:浏览器地址栏里的请求URL)。
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<base href="<%=basePath%>">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>form page</title>
</head>
<body>
</body>
</html>