php getrealpath,java_java 获取路径的各种方法(总结),(1)、request.getRealPath(“/”);//不推 – phpStudy…

php getrealpath,java_java 获取路径的各种方法(总结),(1)、request.getRealPath(“/”);//不推 – phpStudy…java获取路径的各种方法(总结)(1)、request.getRealPath(“/”);//不推荐使用获取工程的根路径(2)、request.getRealPath(request.getRequestURI());//获取jsp的路径,这个方法比较好用,可以直接在servlet和jsp中使用(3)、request.getSession().getServletContext().getRe…

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

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

java 获取路径的各种方法(总结)

(1)、request.getRealPath(“/”);//不推荐使用获取工程的根路径

(2)、request.getRealPath(request.getRequestURI());//获取jsp的路径,这个方法比较好用,可以直接在servlet和jsp中使用

(3)、request.getSession().getServletContext().getRealPath(“/”);//获取工程的根路径,这个方法比较好用,可以直接在servlet和jsp中使用

(4)、 this.getClass().getClassLoader().getResource(“”).getPath();//获取工程classes 下的路径,这个方法可以在任意jsp,servlet,java文件中使用,因为不管是jsp,servlet其实都是java程序,都是一个 class。所以它应该是一个通用的方法。

0、关于绝对路径和相对路径

1、基本概念的理解绝对路径:绝对路径就是你的主页上的文件或目录在硬盘上真正的路径,(URL和物理路径)例 如:C:xyz est.txt 代表了test.txt文件的绝对路径。http://www.sun.com/index.htm也代表了一个URL绝对路径。相对路径:相对与某个基 准目录的路径。包含Web的相对路径(HTML中的相对目录),例如:在Servlet中,”/”代表Web应用的跟目录。和物理路径的相对表示。例 如:”./” 代表当前目录,”../”代表上级目录。这种类似的表示,也是属于相对路径。另外关于URI,URL,URN等内容,请参考RFC相关文档标准。RFC 2396: Uniform Resource Identifiers (URI): Generic Syntax,(http://www.ietf.org/rfc/rfc2396.txt)2.关于JSP/Servlet中的相对路径和绝对路径。 2.1服务器端的地址服务器端的相对地址指的是相对于你的web应用的地址,这个地址是在服务器端解析的(不同于html和javascript中的相对 地址,他们是由客户端浏览器解析的)

1、request.getRealPath

方法:request.getRealPath(“/”)

得到的路径:C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\strutsTest\

方法:request.getRealPath(“.”)

得到的路径:C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\strutsTest\.

方法:request.getRealPath(“”)

得到的路径:C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\strutsTest

request.getRealPath(“web.xml”)

C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\strutsTest\web.xml

2、request.getParameter(“”);

ActionForm.getMyFile();

方法:String filepath = request.getParameter(“myFile”);

得到的路径:D:\VSS安装目录\users.txt

方法:String filepath = ActionForm.getMyFile();

得到的路径:D:\VSS安装目录\users.txt

————————————————–

strutsTest 为工程名

myFile 在ActionForm中,为private String myFile;

在jsp页面中:为

————————————————–

3、获得系统路径

在Application中:

System.getProperty(“user.dir”)

在Servlet中:

ServletContext servletContext = config.getServletContext();

String rootPath = servletContext.getRealPath(“/”);

在jsp中:

application.getRealPath(“”)

4、其他1

1.可以在servlet的init方法里

String path = getServletContext().getRealPath(“/”);

这将获取web项目的全路径

例如 :E:\eclipseM9\workspace\tree\

tree是我web项目的根目录

2.你也可以随时在任意的class里调用

this.getClass().getClassLoader().getResource(“”).getPath(); // 经过测试,这种方法是安全的,最有效的

this.getClass().getResource(“/conf”).getPath();// 经过测试,这种方法也是安全的

这将获取 到classes目录的全路径

例如 : /D:/workspace/strutsTest/WebRoot/WEB-INF/classes/

还有 this.getClass().getResource(“”).getPath().toString();

这将获取 到 /D:/workspace/strutsTest/WebRoot/WEB-INF/classes/bl/

这个方法也可以不在web环境里确定路径,比较好用

3.request.getContextPath();

获得web根的上下文环境

如 /tree

tree是我的web项目的root context

5、其他2

java获取路径几种途径- –

1. jdk如何判断程序中的路径呢?一般在编程中,文件路径分为相对路径和绝对路径,绝对路径是比较好处理的,但是不灵活,因此我们在编程中对文件进行操作的时候,一般都是读取文件的相对路径,

相对路径可能会复杂一点,但是也是比较简单的,相对的路径,主要是相对于谁,可以是类加载器的路径,或者是当前 java文件下的路径,在jsp编程中可能是相对于站点的路径,相对于站点的路径,我们可以通过 getServletContext().getRealPath(“\”) 和request.getRealPath(“\”):这个是取得站点的绝对路径; 而getContextPath():取得站点的虚拟路径;

2. class.getClassLoader.getPath():取得类加载器的路径:什么是类加载器呢? 一般类加载器有系统的和用户自己定义的;系统的ClassLoader就是jdk提供的,他的路径就是jdk下的路径,或者在 jsp编程,比如Tomcat ,取得的类加载器的位置就是tomaca自己设计的加载器的路径,

明白了这些之后,对于文件路径的操作就会相当的清楚,我们在编程的时候,只要想清楚我们所操作的文件是相对于什么路径下的,取得相对路径就可以了.

6、总结

1、获取web服务器下的文件路径

request.getRealPath(“/”)

application.getRealPath(“”)【jsp中 】

ServletContext().getRealPath(“”)

System.getProperty(“user.dir”)【不同位置调用,获取的路径是动态变化的】

2、获取本地路径

jsp中,

request.getParameter(“myFile”);

ActionForm.getMyFile();

获取的值相同:如D:\VSS安装目录\users.txt

*********************************

this.getClass().getClassLoader().getResource(“”).getPath();

==/D:/workspace/strutsTest/WebRoot/WEB-INF/classes/

this.getClass().getResource(“”).getPath().toString();

==/D:/workspace/strutsTest/WebRoot/WEB-INF/classes/bl/

3、获取相对路径

request.getContextPath();

另外:

在Java文件中getResource或getResourceAsStream均可

例:getClass().getResourceAsStream(filePath);//filePath可以是” /filename”,这里的/代表web发布根路径下WEB-INF/classes默认使用该方法的路径是:WEB-INF/classes.已经在 Tomcat中测试。

以上这篇java 获取路径的各种方法(总结)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持phpstudy。相关阅读:

jquery实现简单的自动播放幻灯片效果

分布式队列服务MemcacheQ在Linux系统下的编译安装

基于.NET平台常用的框架和开源程序整理

(图)谷歌Chrome浏览器向Win10 Edge浏览器送庆生蛋糕

Win10已兼容绝大多数Win7/Win8.1软硬件

5种解决Java独占写文件的方法

jQuery基于ID调用指定iframe页面内的方法

AJAX提交与FORM提交的区别说明

Linux系统的密码忘记了 无法登录怎么办

linux构建动态WEB服务器安装篇

Win7/Win8.1系统检测不到KB3035583补丁无法升级Win10的解决方法

javascript获取所有同类checkbox选项(实例代码)

解析php做推送服务端实现ios消息推送

win10系统无法创建分区怎么解决?解决办法图文教程

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

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

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


相关推荐

  • groupadd r mysql_useradd 和groupadd

    groupadd r mysql_useradd 和groupadd1.作用useradd命令用来建立用户帐号和创建用户的起始目录,使用权限是终极用户。2.格式useradd[-dhome][-sshell][-ccomment][-m[-ktemplate]][-finactive][-eexpire][-ppasswd][-r]name3.主要参数-c:加上备注文字,备注文字保存在passwd的备注栏中。-d:指定用户登入时…

    2025年8月3日
    4
  • Pytest(17)运行未提交的git(pytest-picked)

    Pytest(17)运行未提交的git(pytest-picked)前言我们每天写完自动化用例后都会提交到git仓库,随着用例的增多,为了保证仓库代码的干净,当有用例新增的时候,我们希望只运行新增的未提交git仓库的用例。pytest-picked插件可以

    2022年7月31日
    5
  • CSDN各产品线月度NPS分析报告新鲜出炉【2021年7月】[通俗易懂]

    CSDN各产品线月度NPS分析报告新鲜出炉【2021年7月】[通俗易懂]不知道各位用户大大有没有注意到,最近,咱们CSDN网站很多页面增加了这个功能模块:你愿意向朋友推荐xxx吗?哈哈,聪明的小伙伴们可能已经知道了,它其实就是个简单的满意度调查,学名NPS。那到底什么是NPS呢?且听C菌我慢慢道来。一、什么是NPS?NPS是针对企业良性收益与真实增长所提出的用户忠诚度概念,它是目前最流行的顾客忠诚度分析指标。根据用户的推荐意愿,将用户分为三类:推荐者、被动者、贬损者,推荐者与贬损者是对企业实际的产品口碑有影响的用户,这两部分用户在用户总数中所占百分比之差,就是.

    2022年5月5日
    55
  • 秒懂约瑟夫环

    秒懂约瑟夫环转自:https://blog.csdn.net/byn12345/article/details/79487253约瑟夫生者死者游戏约瑟夫游戏的大意:30个游客同乘一条船,因为严重超载,加上风浪大作,危险万分。因此船长告诉乘客,只有将全船一半的旅客投入海中,其余人才能幸免于难。无奈,大家只得同意这种办法,并议定30个人围成一圈,由第一个人数起,依次报数,数到第9人,便把他投入大海…

    2022年6月4日
    31
  • 端口扫描程序NMAP使用手册

    端口扫描程序NMAP使用手册

    2021年8月23日
    56
  • 用GDB调试程序(一)

    用GDB调试程序(一)

    2021年12月10日
    54

发表回复

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

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