`
squll369
  • 浏览: 108688 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

获取classpath里文件的URL

 
阅读更多

通常,我们在项目中,要获得一个文件的url,可以通过如下2种方式,

 

1. 将文件放在classpath下,用如下code,

 

URL url = this.getClass().getClassLoader().getResource(filePath);

 这样,只要filePath是在项目的classpath中,就可以拿到它的url,然后处理它。

 

2. 将文件放在和处理文件类同级的路径中,用如下code,

 

URL url = this.getClass().getResource(filepath);

 这时,filepath必须是和该class是同一个package里。

 

 

但是,还有一个情况,就是这个获得文件url的class最终是要打成一个jar包来给别人使用,比如你写的是一个组件,别人可以使用这个组件,该组件需要读取一些配置文件,是在别人的客户端里要配置进去的,那按照上面的写法是会有问题的,可以采用如下的方式,

 

URL url = Thread.currentThread().getClass().getResource(filePath);
 
分享到:
评论

相关推荐

    Spring中使用classpath加载配置文件浅析

    Spring会使用当前线程的ClassLoader的getResource方法来获取资源的URL。如果当前线程的ClassLoader无法获取到资源,Spring会转而使用加载org.springframework.util.ClassUtils类的ClassLoader。 在Spring加载配置...

    java文件路径获取

    ### Java 文件路径获取方法详解 #### 一、引言 在Java开发中,经常会遇到需要获取文件路径的情况,尤其是在处理配置文件、图片等资源时。本文将详细介绍Java中获取文件路径的各种方法及其应用场景,帮助开发者更好...

    JAVA获取CLASSPATH路径的方法详解

    此外,为了获取`CLASSPATH`之外的路径,开发者可以使用自定义的类加载器或者通过配置文件来指定额外的搜索路径。自定义类加载器允许扩展默认的类加载机制,从而加载不在标准类路径中的类和资源。 总结起来,理解并...

    Java中获取类路径classpath的简单方法(推荐)

    在Java编程语言中,了解如何获取类路径(classpath)是至关重要的,因为类路径决定了Java虚拟机(JVM)在运行时如何查找和加载类。本文将详细介绍在Java中获取类路径的几种常见方法,以供开发者参考。 首先,类路径...

    基于获取JAVA路径,包括CLASSPATH外的路径的方法详解

    然而,描述中提到的重点是获取CLASSPATH之外的路径。CLASSPATH是Java查找类和资源的默认路径,但有时我们需要加载不在这个路径中的资源。以下是一些常用的方法: 1. 使用`this.getClass().getResource("")`:这种...

    java classloader classpath 张孝祥

    类加载器(`ClassLoader`)负责将编译后的`.class`文件加载到Java虚拟机(JVM)中执行,而类路径(`ClassPath`)则是指明了这些`.class`文件的位置。本文主要围绕Java类加载器和类路径展开讨论,以加深对Java运行时...

    J2EE与J2SE路径获取

    类似地,还可以通过`Thread.currentThread().getContextClassLoader().getResource("")`等方式获取ClassPath路径。 4. **通过`System.getProperty()`获取系统属性路径** 除了上述方法之外,还可以通过`System....

    用enum实现单例模式的方法来读取配置文件

    例如,如果配置文件中有`database.url`属性,我们可以通过以下方式获取: ```java String url = Singleton.INSTANCE.getProperties().getProperty("database.url"); ``` `Properties`类提供了`load()`方法,用于从...

    java获取URL内容截取后保存到Excel中

    标题“Java获取URL内容截取后保存到Excel中”涉及的主要知识点是Java网络编程和文件操作,特别是如何从网络上获取资源并将其处理后存储到Excel文件中。在这个过程中,可能会用到以下技术和方法: 1. **Java网络编程...

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

    在Java Web应用中,资源文件的位置可能会变化,此时可以通过`ClassLoader`来获取资源的URL或路径。 ```java // 获取当前类的ClassLoader ClassLoader classLoader = this.getClass().getClassLoader(); // 获取资源...

    JAVA获取文件绝对路径的方法

    在Java编程语言中,获取文件的绝对路径是一个常见的任务,特别是在处理文件系统操作时。绝对路径是指文件在文件系统中的完整地址,它包含了从根目录到文件的所有层级。以下是一些在Java中获取文件绝对路径的方法: ...

    Springboot访问Resource下的文件.pdf

    这里,`resourceLoader.getResource("classpath:file.pdf")`会返回一个`Resource`对象,代表了`file.pdf`的URL。然后通过`getInputStream()`方法,我们可以获取到一个输入流,从而可以读取文件内容。 3. **文件...

    将classpath路径下的配置文件加载进properties集合,并实现Student接口,多态形式,提高程序的可维护性

    `classpath`路径下配置文件的加载、Properties集合的使用以及接口的实现与多态都是为了达到这一目标。以下将详细阐述这些知识点。 首先,`classpath`是Java运行时环境寻找类文件的路径。在Java应用程序启动时,JVM...

    读取war包或jar包内的文件

    标题"读取war包或jar包内的文件"涉及到的知识点主要是如何在程序中动态地获取并读取这些归档文件中的内容,这对于理解和处理Java应用的部署和运行至关重要。这篇博客(虽然链接未提供具体内容)可能探讨了以下关键点...

    java类文件通过$获取properties文件的属性值

    ### Java 类文件通过 $ 获取 properties 文件的属性值 在Java开发中,经常需要读取配置文件中的信息,例如数据库连接信息、系统环境变量等。这些配置通常存储在`.properties`文件中,便于维护和管理。本文将详细...

    JavaWeb_servlet(11)_ 通过 ServletContex 获得类路径下的文件路径

    本篇文章将详细探讨如何通过ServletContext来获取类路径(ClassPath)下的文件路径。 首先,我们需要了解ServletContext的概念。ServletContext是一个全局的上下文对象,它在整个Web应用程序中是唯一的,可以看作是...

    javaweb 读取 classes 下的文件

    先通过`ClassLoader`获取URL,然后转换为`File`对象进行NIO操作: ```java URL url = classLoader.getResource("config.properties"); File file = new File(url.getFile()); // 然后使用java.nio的FileChannel...

    Java获取文件的路径及常见问题解决方案

    该方法返回一个URL对象,用于获取文件的路径。例如: URL url_a = t.getClass().getResource("a.properties"); 3. 使用File对象 File对象可以用于获取文件的路径,例如: File file = new File("a.properties"); ...

    一个通过Socket或URLConnection传文件的示例

    在给定的压缩包文件中,`.classpath`、`.mymetadata`、`.project`、`.myeclipse`和`WebRoot`等文件通常与开发环境和项目配置有关,它们可能包含了关于项目构建、Eclipse IDE的设置以及Web应用的结构信息。...

    java下载文件、图片、文件夹.docx

    `copy(url, url2)` 方法用于复制文件,这里可能是下载图片或附件。这个方法没有在提供的代码中,但通常会涉及到读取源文件并写入目标文件,可以使用 `FileInputStream` 和 `FileOutputStream` 结合 `...

Global site tag (gtag.js) - Google Analytics