`
fan-R
  • 浏览: 44042 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

Class/ClassLoader.getResourceAsStream区别

 
阅读更多
    基本上,两个都可以用于从 classpath 里面进行资源读取,  classpath包含classpath中的路径和classpath中的jar。

两个方法的区别是资源的定义不同, 一个主要用于相对与一个object取资源,而另一个用于取相对于classpath的资源,用的是绝对路径。

在使用Class.getResourceAsStream 时, 资源路径有两种方式, 一种以 / 开头,则这样的路径是指定绝对路径, 如果不以 / 开头, 则路径是相对与这个class所在的包的。

在使用ClassLoader.getResourceAsStream时, 路径直接使用相对于classpath的绝对路径。
分享到:
评论

相关推荐

    Java 使用getClass().getResourceAsStream()方法获取资源

    在Java编程中,`getClass().getResourceAsStream()`是一个非常实用的方法,用于从类路径(Classpath)中加载资源,如配置文件、图片、字体等。这个方法返回一个`InputStream`对象,可以通过它读取到资源文件的内容。...

    Java文件路径详解

    在 Java 中,有两种方式可以获取文件路径,即使用 Class.getResourceAsStream() 和 ClassLoader.getResourceAsStream()。 Class.getResourceAsStream() Class.getResourceAsStream() 方法返回的是一个 InputStream...

    java对properties文件的操作归纳.pdf

    - 使用`this.getClass().getResourceAsStream()`,此方法从当前类的类路径中获取资源,需要以`/`开头,如:`InputStream inputstream = this.getClass().getResourceAsStream("/info.properties");` 3. **加载资源...

    java对properties文件的操作.pdf

    - 使用 `this.getClass().getResourceAsStream()`,如:`InputStream inputstream = this.getClass().getResourceAsStream("/info.properties");` 这种情况要求文件路径以 `/` 开头,表示从类路径的根开始查找。 3...

    java文件路径获取

    - 当使用`Class.getResource`或`Class.getResourceAsStream`时,如果路径不以 `/` 开头,那么查找将从调用该方法的类所在的包开始。 - 当使用`ClassLoader.getResource`或`ClassLoader.getResourceAsStream`时,路径...

    Java 读取资源文件

    1. 使用`Class.getResource()`和`Class.getResourceAsStream()` - `Class.getResource(String path)`方法返回一个`URL`对象,表示相对于当前类的类路径上的资源的位置。例如,如果你有一个名为`config.properties`...

    Java-recourse.rar_java读取recouse

    String content = IOUtils.toString(YourClass.class.getResourceAsStream("/resource.txt"), StandardCharsets.UTF_8); ``` 5. **Spring Framework**:在Spring框架中,可以使用`Resource`接口来操作资源,例如...

    Java读取Properties文件的六种方法

    InputStream input = YourClass.class.getResourceAsStream("/config.properties"); Properties prop = new Properties(); prop.load(input); ``` 3. 使用`java.nio.file`包 Java 7引入了NIO.2 API,我们可以使用`...

    java 读properties 文件六种方法

    InputStream in = ClassLoader.getSystemClassLoader().getResourceAsStream("path/to/your/file.properties"); Properties p = new Properties(); p.load(in); // 使用p对象获取属性值 } catch (Exception e) ...

    Jar包中如何正确地加载资源文件博文中用到的测试项目源码

    你可以通过`Thread.currentThread().getContextClassLoader()`或`Class.getResourceAsStream()`来获取`ClassLoader`实例,然后使用`getResourceAsStream()`方法加载资源文件。例如: ```java InputStream in = ...

    java 静态代码块通过类加载器获取资源文件例子

    Java支持多种类加载器,包括启动类加载器(Bootstrap ClassLoader)、扩展类加载器(Extension ClassLoader)和应用程序类加载器(Application ClassLoader)。当类首次被引用时,对应的类加载器会查找并加载该类的...

    读取jar文件

    - 直接使用类加载器:`ClassLoader.getSystemClassLoader().getResourceAsStream(path)` #### 三、示例代码分析 以下是一段关于如何从jar包中读取资源文件的示例代码: ```java package edu.hxraid; import java....

    Java读取Properties文件的六种方法.txt

    - **`ClassLoader`和`Class.getResourceAsStream()`**:适用于类路径下的资源文件。 - **`URL`**:适用于网络资源文件。 - **`Files.newBufferedReader()`**:适用于Java 7及以上版本,代码更简洁。 - **`...

    API读取Properties文件的六种方法

    这种方法类似于`Class.getResourceAsStream()`,不同之处在于它通过类加载器来查找资源,这使得它在某些情况下更加灵活。 ```java import java.io.InputStream; import java.util.Properties; public class ...

    java加载properties文件的六种方法总结

    在某些情况下,可能需要动态加载资源,可以通过反射调用`Class.getResourceAsStream()`或`ClassLoader.getResourceAsStream()`。例如: ```java Method method = PropertiesUtil.class.getMethod(...

    附带资源的jar包

    当需要在运行时动态加载资源时,还可以使用`ClassLoader.getResource()`或`ClassLoader.getResourceAsStream()`,这样可以利用当前线程的上下文类加载器,适应更复杂的类加载环境。 在打包过程中,确保资源被正确...

    深入java虚拟机(八)开发自己的类加载器 1

    自定义类加载器通常需要继承`java.lang.ClassLoader`类,并重写`findClass(String name)`方法。此方法接收类名作为参数,然后找到对应的`.class`文件并将其转换为`Class`对象。以下是一个简单的类加载器示例: ```...

    java对properties文件的操作[参考].pdf

    在Java中,Properties文件一般存放在类路径(classpath)下,这通常是指工程项目的类包(class package)结构中。这样,程序在运行时可以通过类加载器访问到这些资源文件。 接下来,我们讨论两种获取Properties文件...

    java读取proterties的六种方法

    InputStream in = JProperties.class.getClassLoader().getResourceAsStream("filename.properties"); Properties p = new Properties(); p.load(in); ``` 6. **使用 `ClassLoader` 类的 `...

Global site tag (gtag.js) - Google Analytics