request.getContextPath()作用详解

request.getcontextPath()_详解 request.getcontextPath()详解 立即下载

request.getContextPath()作用详解

开发的时候在jsp页面遇到了如下代码,这段代码是做什么用的呢,以下详细解释:

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

       <%=request.getContextPath()%>是为了解决相对路径的问题,可返回站点的根路径。

        但不用也可以,比如<a href="<%=request.getContextPath()%>/catalog.jsp">,可以直接用<a href="catalog.jsp">也行,这两个文件是在同一个目录下的。比如你要生成一个文件放在服务器上得一个目录下,可以使用request.getContextPath()+/dir,组成一个完整得目录结构!

        但在JSP文件里,有时通过request.getContextPath()得到的路径却为空,为什么?

        context中没有配置path属性,所以你的工程文件就是在根目录下,相当于path="";

        即使你直接在浏览器中输入你的服务器ip就会到你的jsp页面,而不是tomcat的默认页面;所以你通过request.getContextPath()得到的字符串是为空的;它是获得虚目录的;

 

        如果你想得到工程文件的实际物理路径,可通过:<%=request.getRealPath("/")%>,这样页面就会输出:d:/web。

       ① request.getScheme()可以返回当前页面使用的协议;默认返回http,SSL时返回https;

       ② request.getServerName()可以返回当前页面所在的服务器的名字;

       ③request.getServerPort()可以返回当前页面所在的服务器使用的端口,就是项目在服务器上发布的 端口,或者在本地tomcat容器运行时发布的端口,我用的是8081;

       ④request.getContextPath()可以返回当前页面所在的应用的名字;


       request.getContextPath()应该是得到项目的名字,如果项目为根目录,则得到一个"",即空的字条串。如果项目为abc, <%=request.getContextPath()% > 将得到abc,服务器端的路径则会自动加上,<a href="XXXX.jsp"> 是指当前路径下的这个xxx.jsp页面,有时候也可以在head里设置html:base来解决路径的问题,不过用的最多的还是request.getContextPath。

       总结一下以上代码就是拼装当前网页的相对路径的,<base href="...">是用来表明当前页面的相对路径所使用的根路径的。
       比如,页面内部有一个连接,完整的路径应该是 http://localhost:80/myblog/authen/login.do
其中http://server/是服务器的基本路径,myblog是当前应用程序的名字,那么,我的根路径应该是那么http://localhost:80/myblog/。

       有了这个<base ... >以后,我的页面内容的连接,我不想写全路径,我只要写 authen/login.do就可以了。服务器会自动把<base ...>指定的路径和页面内的相对路径拼装起来,组成完整路径。
如果没有这个<base...>,那么我页面的连链接就必须写全路径,否则服务器会找不到。


java中request.getcontextPath()的意思.doc 立即下载

相关推荐

从零开始:QNX SDP 8.0开发环境搭建与实战入门

本文详细介绍了如何从零开始搭建QNX SDP 8.0开发环境并进行实战入门。内容涵盖许可证获取、环境安装、命令行与IDE工具使用、BSP构建、系统镜像生成,以及编写、编译和运行第一个QNX程序的全过程。旨在帮助嵌入式开发者,特别是汽车电子和工业控制领域的工程师,快速掌握这一实时操作系统(RTOS)的开发基础。

weixin_29163857的博客 641

request.getcontextPath() 详解

上下文路径是Web应用在服务器上的唯一路径标识。对于部署在服务器上的每个Web应用,都有一个唯一的上下文路径。例如,对于Web应用"myapp",其上下文路径可能是"/myapp"。

聚娃科技开发者博客 3527

保姆级教程:手把手教你用CANoe/CANalyzer读取汽车故障码(UDS 0x19服务实战)

本文提供了一份详细的CANoe/CANalyzer使用教程,指导如何通过UDS 0x19服务读取汽车故障码。从硬件配置到报文构建,再到故障码解析,手把手教你完成汽车诊断全流程,特别适合汽车电子工程师和诊断开发人员。

weixin_42524945的博客 260

request.getContextPath()与路径

request.getContextPath()主要是为了解决相对路径的问题,可以返回站点的根路径。 绝对路径:绝对路径是包括服务器协议(在本例中为http协议)的完全路径,是指文件在硬盘上真正存在的路径,可以使用“\”或“/”作为目录分割字符。 相对路径:相对路径的以“/”开头,路径是从当前站点的根目录。 根路径:是指逻辑驱动器的最上一级目录,它是相对子目录来说的。 <% String path=request.getContextPath(); String basePath=request.ge

qq_45697630的博客 5332

【阿里云大模型高级工程师ACP学习笔记】2.8 部署模型

【摘要】本文主要分享自学阿里云大模型高级工程师 ACP 认证中《2.8 部署模型》的学习笔记。详细介绍学习目标、梳理涵盖的知识点并评估其重要性和难易度,对既重要又困难的知识点进行重点分析,旨在为对阿里云大模型学习和认证感兴趣的读者提供学习思路和经验参考。

davidkorhenn的博客 2060

雷达工程师避坑指南:STAP处理中,间歇采样转发干扰为什么这么难对付?

本文深入解析了STAP处理中间歇采样转发干扰(ISRJ)的挑战与应对策略。通过分析ISRJ的工作机制和自由度消耗问题,结合仿真数据对比,揭示了其与传统压制干扰的本质差异。文章还探讨了在工程实践中如何构建有效的防御体系,包括降维处理技术选择和混合架构设计,为雷达工程师提供了实用的避坑指南。

weixin_30530339的博客 270

<%=request.getContextPath()%>的作用

/XXXX.jsp"> 指的是根目录下的xxxx.jsp 假设你的要目录http://localhost:8080, 你现在访问的页面为http://localhost:8080/admin/manage.jsp 则/XXXX.jsp"> 指向的链接是:http://localhost:8080/xxxx.jsp 链接的是当前jsp文件路径下的xxxx.jsp 上例指向的链接是:ht

Java海洋 1万+

【Matlab】刃边法计算mtf

摘要:刃边法是一种测量光学系统调制传输函数(MTF)的常用方法。本文介绍了基于Matlab的MTF计算实现方案,包括图像灰度化、梯度计算、刀口方向选择、梯度投影等关键步骤,并给出了完整的代码实现。该方案可通过添加图像预处理、多方向计算、函数封装等方式进行扩展,提高MTF计算的准确性和实用性,适用于不同应用场景的光学系统性能评估需求。(148字)

unber的博客 389

【转载】request.getContextPath()作用详解

转载自:Sysware_Carol的博客https://blog.csdn.net/Sysware_Carol/article/details/51838784request.getContextPath()作用详解开发的时候在jsp页面遇到了如下代码,这段代码是做什么用的呢,以下详细解释:String path = request.getContextPath(); String baseP...

weixin_42203545的博客 497

OTA 升级失败/回滚策略设计:打造安全可靠的双分区/断点续传/签名校验方案

双分区机制(A/B Partitioning)是OTA升级的“保险箱”。简单来说,设备存储分为两个分区:A分区(当前运行)和B分区(备用)。升级时,新固件写入B分区,A分区保持不变。如果升级成功,系统切换到B分区运行;如果失败,设备直接回滚到A分区,完全不受影响。这就像玩游戏存档:你打Boss前存了个档,万一挂了还能读档重来。双分区就是设备的“读档”机制,避免了变砖的尴尬。以Android设备为例,Google从Android 7.0开始强制引入A/B分区机制(Seamless Updates)。

大模型大数据攻城狮的专栏 1235

NSIS教程(8): 基于第三方界面库的安装包界面

前面的几篇文章介绍了NSIS的传统界面的安装包和现代界面的安装包的制作方法,也提到了NSIS支持自定义页面(即使用page custom)的特性,自定义页面需要用户自己创建对话框、控件、添加控件响应等等,虽然NSIS提供了nsDialogs.nsh来支持这些功能,但使用起来还是不太方便(需要专门了解这个插件诸多用法),而且不够灵活,所以本文介绍一种终极的自定义界面的安装包解决方案,即完全使用第三方

while(1) { smile(); } 9万+

jsp中String path = request.getContextPath()的作用

<% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> 上述语句是用来拼接当前网页的相对路径 request.getContextPath()获取web项目的根路径,即webContent(MyEclipse中是webRoot) 页面内部有一个连接

qq_43573663的博客 1547

vue2/3 - [超详细] 实现企业微信扫码登录完整流程及代码,vue项目接入企业微信扫码登录功能教程,支持新跳页显示二维码或div容器里内嵌登录二维码(详细代码注释,一键复制开箱即用)

vue企业微信扫码登录,vue网页网站企业微信扫码登录教程,vue如何实现企业微信扫码登录功能,vue详细企业微信扫码登录功能实现,vue2实现企业微信扫码登录,前端vue企业微信扫码登录教程,vue pc电脑端企业微信扫码登录详细教程,vue项目中怎么做企业微信扫码注册登录,vue实现网站接入企业微信扫码登录,vue2做企业微信扫码登录的优质文章教程,vue网站对接企业微信扫码登录,vue企业微信扫码登录如何新开一页全屏显示登录二维码,vue企业微信登录二维码 内嵌在div容器里/跳页显示登录二维码,vu

✅ 精选推荐文章 5703

request.getScheme(),request.getServerName(),request,getServerPort(),request.getContextPath()作用

request.getContextPath()其作用是获取当前系统路径; request.getScheme()返回当前页面使用的协议,http或者https; request.getServerName()返回当前页面所在的服务器的名字; request.getServerPort()返回当前页面所在的服务器使用的端口; 总结就是为了获取项目中页面的地址。 使用方放: <% String path = request.getContextPath(); String basePa

qqnbsp的博客 747

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

JSP页面中 String path = request.getContextPath()的作用

<% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> 这代码是在jsp出现, 它的含义就是得到一个服务器路径 提交form表单时,...

kai402458953的博客 870

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

jsp中的request.getContextPath()

jsp中的request.getContextPath()    request.getContextPath()%>是为了解决相对路径的问题,可返回站点的根路径。 但不用也可以吧,比如request.getContextPath()%>/catalog.jsp"> 我就直接用也行啊,这两个文件是在同一个目录下的 比如你要生成一个文件放在服务器上得一个目录下,你可以使用request.

kyi_persisting的博客 5165

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

idea 中 pageContext.request.contextPath与request.getContextPath() 不起作用的坑

idea 中<c:set var="ctx" value="${pageContext.request.contextPath}" /> ctx可能没有值或者request.getContextPath()没有值很大原因是你没有配置成功,这很可能导致你的静态资源找不到,如图片找不到。 当把eclipse项目换成在idea 跑的时候就要重新配置tomcat 中的Applicati...

manonggui的博客 1009

request.getContextPath() 基础

今天终于明白了jsp中的request.getContextPath()是怎么回事了。 request.getContextPath()  返回站点的根目录 request.getRealpath("/")得到的是实际的物理路径,也就是你的项目所在服务器中的路径 request.getScheme() 等到的是协议名称,默认是http request.getServerName() 得到的

dada_dabaitu的博客 1951

使用request.getContextPath()可以获得上下文资源, 那么什么是上下文资源? 使用上下文资源有什么作用?

获取当前项目根地址 比如你现在的URL是192.1.1.1:8080/my/index.jsptomcat配置的当前项目访问地址是192.1.1.1:8080/myrequest.getContextPath()得到的就是192.1.1.1:8080/my 上下文就是服务器上的一个路径,这个路径是存在服务器内存中的,你可以下路径中添加信息,然后根据路径和键值去找这个信息。 优点:    

yilaguandemei的博客 1111

request.getContextPath详解

是为了解决相对路径的问题,可返回站点的根路径。   但不用也可以,比如/catalog.jsp">,可以直接用也行,这两个文件是在同一个目录下的。比如你要生成一个文件放在服务器上得一个目录下,可以使用request.getContextPath()+/dir,组成一个完整得目录结构!   但在JSP文件里,有时通过request.getContextPath()得到的路径却为空,为什么?

starrysky的专栏 702
上一篇: 基于zookeeper的dubbo配置
下一篇: 如何安装TestNG
LV爱马仕
博客等级 码龄10年 10粉丝 12原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值