如何解决项目中jsp访问路径的问题

jsp访问路径的解决方法可经过EL表达式、jsp中的java语言所提供的方法、DHTML.js所提供的方法等javascript

如源代码所示:html

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>jsp访问路径</title>
</head>
<body onload="load()">
        <div>
        <h1>jsp访问路径的解决方法</h1>
        <h2>方法一:经过EL表达式获取路径值</h2>
        method one(EL):<br>
        ${header['host']}${pageContext.request.contextPath}            
        <h2>方法二:经过DHTML.js里提供的方法(建立javaee项目时,js插件默认已有)</h2>
        <p id="p_id"></p>
        <h2>方法三:经过jsp中的java语言</h2>
        <%
         String path = request.getContextPath();
         String basePath = request.getScheme()+"://"+request.getServerName()+
         ":"+request.getServerPort()+path+"/";
        %>
        <span>
        method three(java):
        <br><%=basePath%>
        <br><%=path%>
        </span>
        </div>
<script src="http://libs.baidu.com/jquery/2.0.0/jquery.js"></script>
<script type="text/javascript">    
function  load(){
        var curPath = window.document.location.href;
        var pathName = window.document.location.pathname;
        var port = window.document.location.port;
        var hostname = window.document.location.hostname;
        var host = window.document.location.host;
        $("#p_id").html("method two(js):"+
              "<br>curPath:"+curPath+ //访问当前界面绝对路径
              "<br>pathName:"+pathName+  //从项目名开始算起
              "<br>port:"+port+  //tomcat部署的端口号
              "<br>hostname:"+hostname + //主机名和端口号
              "<br>host:" + host);//主机名
    }
</script>
</body>
</html>java

picture:jquery

Methods in DHTML.js:tomcat

其中jsp

/**
@type {string}   使用注解声明string类型
*/
Location.prototype.hostname = null;  //对应window.document.location.hostname;

注:方法是多种多样的,无论采用哪一种,只要能解决jsp访问路径的问题便可(若要对应本身的项目路径,建议可经过String所提供的分割或替换的方法处理)ui

相关文章
相关标签/搜索