这里跳过相对路径的方法,简要说明2种获取绝对路径的方法。

方法一:

编辑一个jsp文件来获取绝对路径,再在常规jsp页面中引用。


编辑taglib.jsp文件,写入如下内容:


<%@ pagelanguage="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ tagliburi="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ tagliburi="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
<!-- 获取绝对路径 -->
 
<c:set var="ctx"value="${pageContext.request.contextPath}"></c:set>

jsp页面上加入

<%@include file="taglib.jsp"%>

引用js或其他资源时,路径加入${ctx }:

<scripttype="text/javascript"
    src="${ctx}/jquery-easyui-1.5.3/jquery.easyui.min.js"></script>
<linkrel="stylesheet" type="text/css"
    href="${ctx}/jquery-easyui-1.5.3/themes/default/easyui.css">


方法二(推荐):

jsp页面上直接加入:

<%
    String path = request.getContextPath();
    String basePath = request.getScheme() +"://"
            + request.getServerName() +":" + request.getServerPort()
            + path + "/";
%>

并在head标签中引用


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


推荐第二种方法,第一种在请求时会加入当前控制器路径,导致请求url错误,如我们理想的url:userCtrl/,实际跳转的是 empCtrl/userCtrl/