request.getRealPath_java response

request.getRealPath_java responseequest.getRealPath()这个方法已经不推荐使用了,代替方法是:request.getSession().getServletContext().getRealPath()从Request对象中可以获取各种路径信息,以下例子:假设请求的页面是index.jsp,项目是WebDemo,则在index.jsp中获取有关request对象的各种路径信息如下Stringpath=requ…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

equest.getRealPath() 这个方法已经不推荐使用了,代替方法是:

request.getSession().getServletContext().getRealPath()

从Request对象中可以获取各种路径信息,以下例子:

假设请求的页面是index.jsp,项目是WebDemo,则在index.jsp中获取有关request对象的各种路径信息如下

String path=request.getContextPath();

String basePath= request.getScheme()+”://”+request.getServerName()+”:”+request.getServerPort()+path+”/”;

String remoteAddress=request.getRemoteAddr();

String servletPath=request.getServletPath();

String realPath=request.getRealPath(“/”);

String remoteUser=request.getRemoteUser();

String requestURI=request.getRequestURI();

out.println(“path:”+path+”
“);

out.println(“basePath:”+basePath+”
“);

out.println(“remoteAddr:”+remoteAddress+”
“);

out.println(“servletPath:”+servletPath+”
“);

out.println(“realPath:”+realPath+”
“);

out.println(“remoteUser:”+remoteUser+”
“);

out.println(“requestURI:”+requestURI+”
“);

结果:

path:/WebDemo

basePath:http://localhost:8683/WebDemo/

remoteAddr:127.0.0.1servletPath:/index.jsp

realPath:D:\apache-tomcat-6.0.13\webapps\WebDemo\

remoteUser:nullrequestURI:/WebDemo/index.jsp

从上不难看出request各个对应方法所代表的含义

参考servlet中的接口:

request.getScheme();

返回的协议名称,默认是http

request.getServerName()

返回的是你浏览器中显示的主机名,你自己试一下就知道了

getServerPort()

获取服务器端口号

例如:

TestServlet

/servlet/test/*

dwr为工程名

http://localhost:8080/dwr/servlet/test/joejoe1991/a.html?name=test

getPathInfo() 返回的仍然是:

“/joejoe1991/a.html” ,而并不包括后面的”?name=test”;

在servlet里用this.getServletContect().getRealPath()

在struts里用this.getServlet().getServletContext().getRealPath()

在Action里用ServletActionContext.getRequest().getRealPath();

以上三个获得都是当前运行文件在服务器上的绝对路径

从request获取各种路径总结

request.getRealPath(“url”); // 虚拟目录映射为实际目录

request.getRealPath(“./”);    // 网页所在的目录

request.getRealPath(“../”); // 网页所在目录的上一层目录

request.getContextPath();    // 应用的web目录的名称

如http://localhost:7001/bookStore/

/bookStore/ => [contextPath] (request.getContextPath())

获取Web项目的全路径

String strDirPath = request.getSession().getServletContext().getRealPath(“/”);

以工程名为TEST为例:

(1)得到包含工程名的当前页面全路径:request.getRequestURI()

结果:/TEST/test.jsp

(2)得到工程名:request.getContextPath()

结果:/TEST

(3)得到当前页面所在目录下全名称:request.getServletPath()

结果:如果页面在jsp目录下 /TEST/jsp/test.jsp

(4)得到页面所在服务器的全路径:application.getRealPath(“页面.jsp”)

结果:D:\resin\webapps\TEST\test.jsp

(5)得到页面所在服务器的绝对路径:absPath=new java.io.File(application.getRealPath(request.getRequestURI())).getParent();

结果:D:\resin\webapps\TEST

2.在类中取得路径:

(1)类的绝对路径:Class.class.getClass().getResource(“/”).getPath()

结果:/D:/TEST/WebRoot/WEB-INF/classes/pack/

(2)得到工程的路径:System.getProperty(“user.dir”)

结果:D:\TEST

3.在Servlet中取得路径:

(1)得到工程目录:request.getSession().getServletContext().getRealPath(“”) 参数可具体到包名。

结果:E:\Tomcat\webapps\TEST

(2)得到IE地址栏地址:request.getRequestURL()

结果:http://localhost:8080/TEST/test

(3)得到相对地址:request.getRequestURI()

结果:/TEST/test

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/191759.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 淘宝装修html代码大全_上古卷轴装修材料代码

    淘宝装修html代码大全_上古卷轴装修材料代码http://blog.sina.com.cn/s/blog_506f1f940100hv9d.html淘宝网店装修HTML代码大全,包括淘宝装修代码,插入图片代码,公告滚动代码,不不一定要懂网站知识,不一定要懂HTML语言,看完这个就可以装修网店的,你不一定要全部看完,可以当成是一个字典查找就好了。一、插入图片代码:注:先把图片上传到网络相册网络地址,把它拷贝下来,

    2025年7月22日
    3
  • 【转载】男人选妻有什么实用主义标准?「建议收藏」

    【转载】男人选妻有什么实用主义标准?「建议收藏」 在现实生活中,有相当一部分事业和生活都非常优秀的剩女们,总是没有不懂男人们在选择妻子时的心里到底在想些什么?更让她们不能接受的是,为什么男人讨老婆总是喜欢找一些看起来貌不出众,或学历与家景比自己差很多的女孩为妻。反而是像自己无论是学历文凭、家庭背景、从事职业甚至收入水平都明显高人一截的女人,反倒成了没男人追求最终被剩下的那个女人了。其实,男人找女朋友跟最终选择结婚对象时的想法是不一样的,…

    2022年5月4日
    36
  • 你必须了解的10款服务器监控工具有哪些_nmon监控工具使用方法

    你必须了解的10款服务器监控工具有哪些_nmon监控工具使用方法你不得不了解的10款服务器监控工具背景监控Web服务器或Web主机的运行状况和正常运行非常重要。如果希望确保您的网站可用性在您的控制之中,那你就需要收集服务器各种性能数据以供分析和调整。以下是收集

    2022年8月3日
    4
  • linux 压缩成bz2,linux 将文件压缩成bz2格式 命令:bzip2

    linux 压缩成bz2,linux 将文件压缩成bz2格式 命令:bzip2bzip2命令用于创建和管理(包括解压缩)“.bz2”格式的压缩包。我们遇见Linux压缩打包方法有很多种,以下讲解了Linux压缩打包方法中的Linuxbzip2命令的多种范例供大家查看,相信大家看完后会有很多收获。语法bzip2(选项)(参数)选项-c或——stdout:将压缩与解压缩的结果送到标准输出;-d或——decompress:执行解压缩;-f或-force:bzip2在…

    2022年5月4日
    102
  • 群晖aria2外网无法访问(群晖设置aria2)

    NAS群晖DSM5.2小白教程:一行命令用Docker架设aria2服务首发2016-05-1712:15:2225点赞285收藏57评论小编注:此篇文章来自即可瓜分10万金币,周边好礼达标就有,邀新任务奖励无上限,点击查看活动详情群晖DSM5.2起新增支持Docker让开发者与用户能以最少的时间与资源,能够在Synology服务器上部署和运行大量应用程序。Docker容器和普通的虚…

    2022年4月14日
    802
  • android 定时器重置,Android定时器延迟和重置[通俗易懂]

    android 定时器重置,Android定时器延迟和重置[通俗易懂]我确定在这里的某处有类似的问题,但我似乎无法找到它。Android定时器延迟和重置这是我正在尝试做的。假设我已连接到服务器,并且如果在过去5分钟内没有用户拨打任何电话,我想断开连接。但是,如果连一个单一的呼叫时,5分钟计时器将复位,倒计时5将重新开始..它似乎很简单,但我是一种新的Android和试图搞清楚这些事情..在此先感谢!=======编辑所以这里的什么我想要做的代码的例子。try{cl…

    2022年7月25日
    17

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号