`

java 获取 路径

 
阅读更多
在jsp和class文件中调用的相对路径不同。

在jsp里,根目录是WebRoot 在class文件中,根目录是WebRoot/WEB-INF/classes 当然你也可以用System.getProperty("user.dir")获取你工程的绝对路径。

1.jsp中取得路径:
以工程名为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

另,Class类还有一个getResourceAsStream方法,记得以前有个项目要读取在同一个包内的一个xml,就用的这个。

1.如何获得当前文件路径

常用:
(1).Test.class.getResource("")
得到的是当前类FileTest.class文件的URI目录。不包括自己!
(2).Test.class.getResource("/")
得到的是当前的classpath的绝对URI。
(3).Thread.currentThread().getContextClassLoader().getResource("")
得到的也是当前ClassPath的绝对URI。
(4).Test.class.getClassLoader().getResource("")
得到的也是当前ClassPath的绝对URI。
(5).ClassLoader.getSystemResource("")
得到的也是当前ClassPath的绝对URI。
尽量不要使用相对于System.getProperty("user.dir")当前用户目录的相对路径,后面可以看出得出结果五花八门。
(6) new File("").getAbsolutePath()也可用。

注:若这些路径中出现空格,并且空格被 代替,则可以使用path = java.net.URLDecoder.decode(path,"utf-8") 进行转化;
      
2.Web服务器
(1).Tomcat
在类中输出System.getProperty("user.dir");显示的是%Tomcat_Home%/bin
(2).Resin
不是你的JSP放的相对路径,是JSP引擎执行这个JSP编译成Servlet的路径为根.比如用新建文件法测试File f = new File("a.htm");
这个a.htm在resin的安装目录下
(3).如何读文件
使用ServletContext.getResourceAsStream()就可以
(4).获得文件真实路径

String   file_real_path=ServletContext.getRealPath("mypath/filename"); 
不建议使用request.getRealPath("/");

分享到:
评论

相关推荐

    总结一下java获取路径几种途径

    总结一下java获取路径几种途径。。。。。。。。。。。

    java获取路径

    java获取路径 几种获取java路径的不同用法

    java获取路径的各种方法

    java获取路径的各种方法,里面包含各种web工程获取路径的方法

    Java获得某个路径下的所有文件列表,并写入指定文件

    Java获得某个路径下的所有文件列表,并写入指定文件

    java项目中获取路径详解

    Java 项目中获取路径详解 在 Java 项目中,获取路径是非常重要的,因为它关系到项目的正确运行。特别是在 Java Web 项目中,获取路径变得更加复杂。下面我们将详细讨论 Java 项目中获取路径的方法和注意事项。 ...

    java文件路径获取

    java文件路径获取方法应用总结,非常好

    java 获取当前路径

    Java 获取当前路径 Java 获取当前路径是 Java 编程中一个常见的需求,下面我们将讨论如何在 Java 中获取当前路径。 方法一:使用 System.getProperty() 函数 使用 System.getProperty() 函数可以获取当前路径,该...

    JAVA读取同一路径下所有类及其方法

    在 Java 中,获取同一路径下所有类及其方法是非常重要的,这样才能对权限进行控制。在本文中,我们将提供一种获取所有类及其方法的方法。 获取同一路径下所有类及其方法 在开发内部可视化系统的“系统功能-功能...

    java 获取桌面路径

    java 获取桌面路径 java 获取桌面路径 java 获取桌面路径 java 获取桌面路径

    java中获取路径

    java、servlet、jsp、class等等中如何获得所在的路径

    简单的JAVA实现获取windows的系统路径

    这段简单的JAVA代码可以获取到WINDOWS的系统目录和环境变量,在XP和WIN7下测试通过!

    java绝对路径和相对路径

    java获取路径几种途径,1、获取web服务器下的文件路径,2、获取本地路径,3、获取相对路径

    JAVA获取各种路径总结

    JSP中获得当前应用的相对路径和绝对路径  根目录所对应的绝对路径、 文件的绝对路径 、 当前web应用的绝对路径、 取得请求文件的上层目录……

    Java中获得路径

    NULL 博文链接:https://fengozl.iteye.com/blog/2211253

    JAVA中获取各种路径

    经常遇到路径问题 这些也是我从网上找到的 大家分享下

    linux中java获取路径的实例代码

    在本篇文章里小编给大家整理的是一篇关于linux中java获取路径的实例代码以及相关知识点,有兴趣的朋友们可以学习参考下。

    Java文件路径详解

    Java 文件路径详解是一种在 Java 中获取文件路径的方式。它可以将文件路径转换为 InputStream,以便于读取文件的内容。在 Java 中,有两种方式可以获取文件路径,即使用 Class.getResourceAsStream() 和 ClassLoader...

    java获取jdk路径

    java获取jdk路径 根据环境变量和正则表达式匹配

Global site tag (gtag.js) - Google Analytics