request.getContextPath()主要是为了解决相对路径的问题,可以返回站点的根路径。
绝对路径:绝对路径是包括服务器协议(在本例中为http协议)的完全路径,是指文件在硬盘上真正存在的路径,可以使用“\”或“/”作为目录分割字符。
相对路径:相对路径的以“/”开头,路径是从当前站点的根目录。
根路径:是指逻辑驱动器的最上一级目录,它是相对子目录来说的。
<%
String path=request.getContextPath();
String basePath=request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
上面的代码也是java前端的常见代码,下面进行剖析:
request.getScheme():返回当前页面使用的协议,默认返回http。
request.getServerName():返回当前页面所在的服务器的名字。
request.getServerPort():返回当前页面所在的服务器使用的端口,就是项目在服务器上发布的 端口,或者在本地tomcat容器运行时发布的端口。
request.getContextPath():返回当前页面所在的应用的名字。
示例代码:
项目结构如下图:
index.jsp
<%@ 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>
<html>
<head>
<base href="<%=basePath%>">
<%
System.out.println(request.getContextPath());
System.out.println(request.getScheme());
System.out.println(request.getServerName());
System.out.println(request.getServerPort());
%>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body bgcolor="pink">
<div style="text-align:center">
<h2>用户首页</h2>
没注册的请注册<a href="index/register">注册</a><br>
已注册的请登录<a href="index/login">登录</a><br>
</div>
</body>
</html>
运行结果(这里只展示控制台):
今天的文章request.getContextPath()与路径分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/28505.html