这几天做巴巴运动网项目,经常被“相对路径”这东西困惑。经常在链接和图片地址上出现失误,总结了几点经验写在这里:
(一)方法一:直接采用绝对路径
在页面中加上:
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
以后在用到路径时例如:<a href="${pageScope.basePath}jsp/register.jsp">或<%=basePath%>jsp/register.jsp,从而构成了一个绝对路径。
(二)方法二: 利用html中的<base>标签(推荐)
在页面中加上
<%@ page language="java" pageEncoding="GBK" contentType="text/html;charset=gbk" isELIgnored="false"%>
<%
String path = request.getContextPath();
// 获得项目完全路径(假设你的项目叫MyApp,那么获得到的地址就是 http://localhost:8080/MyApp/):
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
后再在head中加入
<base href="<%=basePath%>">
就可以直接使用相对路径了。