伯乐一看小编的这个博文的标题是不是觉得有些小,以点到面,知道了web中getContextPath()这种获取路径的方式,显然其他的方式的是可以以此类推的。常说,工作学习找共同点嘛。

上一段我们也提高getContextPath()的含义,是jsp中获取路径的一种方式,返回当前页面所在的应用的名字。知其然知其所以然,知道它大体上的含义,看看在项目中是如何使用的?

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

在程序中我们一般这样使用。说到了这里,我们可以看看request常用的方法:

request.getSchema(),返回的是当前连接使用的协议,一般应用返回的是http、SSL返回的是https;

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

request.getServerPort(),返回当前页面所在的服务器使用的端口,80;

request.getContextPath(),返回当前页面所在的应用的名字。

getContextPath()是jsp中获取路径的一种方式,那么获取到结果是什么呢?jsp其他获取路径的方式是怎样的呢?表示好奇,请听分解:

以访问的jsp为:http://localhost:8080/dmsd-itoo-exam-log-web/course/index.jsp,工程名为/dmsd-itoo-exam-log-web为例:

request.getContextPath(),得到工程名:/dmsd-itoo-exam-log-web;

request.getServletPath(),返回当前页面所在目录下全名称:/course/index.jsp;

request.getRequestURL(),返回IE地址栏地址:http://localhost:8080/dmsd-itoo-exam-log-web/course/index.jsp;

request.getRequestURI() ,返回包含工程名的当前页面全路径:/dmsd-itoo-exam-log-web/course/index.jsp。
       对jsp获取当前应用的路径方法和request常用方法有了基本的了解,下面后台通过request.getScheme()获取当前页面使用协议遇到的问题:request.getScheme()获取到的确实http而不是https,与request.getRequestURL()拿到的一样也是http。

这是为什么呢?

原来,nginx+tomcat部署web服务,tomcat接收到的请求是来自nginx的http请求。我想这也是上一博文中说到项目用https启动请求不到页面的原因吧。

web项目的getContextPath()相关推荐

  1. 手动将web项目的class文件打成jar包,手动打jar包,java -cvf,IDE打包底层指令

    手动将web项目的class文件打成jar包. 我们的项目在使用IDE进行编译后,在项目的target目录下将会生成class文件.我们可以将class文件打成jar包. 使用的到命令为: 在targ ...

  2. eclipse 配置java路径_Java修改eclipse中web项目的server部署路径问题

    和MyEclipse不一样,在Eclipse中做的Web项目默认是不支持将项目发布到Web服务器上的,会发布到工作空间的某个目录,因此无法在外部启动Tomcat来运行Web项目,只有打开Eclipse ...

  3. Maven(三):将web项目的war包热部署到远程Tomcat服务器

    相关阅读: Maven(一):安装与环境配置.使用Maven搭建web项目 Maven(二):常用命令.依赖管理 Maven(三):将web项目的war包热部署到远程Tomcat服务器 Maven(四 ...

  4. Eclipse修改web项目的jdk编译版本

    Eclipse修改web项目的jdk编译版本 有的时候因为项目需要的原因我们需要指定web项目的编译版本,下边是两种修改编译版本的方法 1.修改所有项目的默认jdk版本 点击Window->Pr ...

  5. java项目如何更改路径_Java修改eclipse中web项目的server部署路径问题

    和MyEclipse不一样,在Eclipse中做的Web项目默认是不支持将项目发布到Web服务器上的,会发布到工作空间的某个目录,因此无法在外部启动Tomcat来运行Web项目,只有打开Eclipse ...

  6. 【IDEA】关于 IDEA 中新建 web 项目的 webapp 文件夹没有小蓝点 ,启动服务,访问不到解决方案

    [IDEA]关于 IDEA 中新建 web 项目的 webapp 文件夹没有小蓝点 ,启动服务,访问不到解决方案 参考文章: (1)[IDEA]关于 IDEA 中新建 web 项目的 webapp 文 ...

  7. 【Struts2】Struts2框架创建web项目的6个步骤

    Struts2框架创建web项目的6个步骤 1.创建WEB项目 2.导入Struts2核心jar包 3.在web.xml文件中配置前端控制器filter ※如果Struts2框架是2.1.3之后的版本 ...

  8. eclipse更改web项目的WebContent目录

    在使用eclipse 中 , 相信大家比我更是轻车熟路了 ( 我平常一般用 Intellij idea 的 ), 下面讲解一下在eclipse web项目中 , 如何设置 webroot 目录指向问题 ...

  9. 关于web项目的 ajax 处理方式

    2019独角兽企业重金招聘Python工程师标准>>> 传统处理方式: 这是我们最常用的 web 项目请求 - 处理流程. 主要由服务端响应用户请求,处理业务数据,生成 html 页 ...

最新文章

  1. hdu 1080(LCS变形)
  2. HDU-4417 Super Mario
  3. leetcode 581. Shortest Unsorted Continuous Subarray | 581. 最短无序连续子数组(单调栈)
  4. Web开发常出现的错误[个人收集]
  5. 阿里取消周报!但普通数据人的周报、月报焦虑,谁来拯救?
  6. 【Flutter】如何新建项目,运行你的第一个 flutter 工程项目
  7. 编译ffmpeg没有生成编译后ffplay
  8. 弱监督学习总结(1)
  9. 四象限法推导lm曲线_数据分析四象限法详解
  10. java细节篇(==和equals的区别)
  11. 比数据可视化更高级的大屏可视化
  12. [SDIO] SD card 初始化及常用命令解析(附波形,uboot代码)
  13. amd显卡怎么设置风扇?
  14. k8s教程----零基础快速入门
  15. c语言中num =10,num/100%10 这是什么意思求详细的计算逻辑
  16. 树的直径,树的中心,树的重心
  17. 2017免费发布信息平台排行大全!
  18. windows11虚拟机安装出现蓝屏
  19. Protege-OWL API中文版
  20. mcafee 8.5杀毒软件下载

热门文章

  1. Smart3D(ContextCapture)跑三维到底要啥配置?!40000元来组建建模集群
  2. 数据结构(共享栈的实现)
  3. LibreCAD for windows 编译
  4. 【yum】error: unpacking of archive failed on file
  5. MATLAB simulink 模型验证学习笔记
  6. d3.js操作svg
  7. hksi paper 1 香港证券资格考试卷一 备考经验分享(2022.10) 證券及期貨從業員資格考試
  8. 阿里云部署数据库(遇到的问题及解决方案)
  9. resnet-50介绍(一)
  10. HTML简易奥运五环