`
elliotann
  • 浏览: 13483 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Java class.getResourceAsStream和ClassLoader.getResourceAsStream区别

 
阅读更多

它们都是去取classpath下的资源,但它们在路径上有一些区别:

        1、Class.getResourceAsStream如果在没有"/"开头的情况下是去相对于此class文件开始进行查询的,如:如果有一个com.elliot.A.class的类文件,如果用A.class.getResourceAsStream("test.xml"),其是去A.class包下即com/elliot/下去查找test.xml文件的。但如果其以A.class.getResourceAsStream("/test.xml"),就是从classpath的绝对路径去查找test.xml文件的,也就是和包com同级下去查找文件。

       2、ClassLoader.getResourceAsStream方式是从classpath的绝对路径开始去查询资源的,其开头不能加"/",其效果和Class.getResourceAsStream以"/"等同。

 

分享到:
评论

相关推荐

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

    `ClassLoader`是Java用来加载类和资源的对象,它能够遍历整个`Classpath`来寻找指定的资源。由于`getClassLoader().getResourceAsStream()`是从类路径的根开始查找,所以也不需要在`fileName`前添加斜杠。 当你的...

    Java文件路径详解

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

    java文件路径获取

    假设有一个位于`com.explorers`包下的`Test.java`类,以及一个名为`abc.jpg`的资源文件,我们可以通过以下几种方式获取该资源: 1. 使用`Class.getResourceAsStream`: ```java InputStream inputStream = Test....

    Java 读取资源文件

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

    Java-recourse.rar_java读取recouse

    1. **使用`ClassLoader`**:Java的`ClassLoader`类能够加载指定类路径下的资源。你可以通过`Thread.currentThread().getContextClassLoader().getResource()`或`YourClass.class.getResource()`来获取`URL`对象,...

    Java读取.properties文件 的四种方法

    try (InputStream in = PropertiesLoader.class.getResourceAsStream("/config.properties")) { // 加载.properties文件 props.load(in); // 获取属性值 String dbUrl = props.getProperty("db.url"); System....

    Java加载properties文件的六种方法

    5. **使用 `class.getClassLoader()` 所得到的 `java.lang.ClassLoader` 的 `getResourceAsStream()` 方法** 这种方法与第4种类似,只是通过类加载器获取资源输入流。示例: ```java InputStream in = ...

    jwwe学习资料,jwwe学习资料

    InputStream in = JProperties.class.getClassLoader().getResourceAsStream(name); Properties p = new Properties(); p.load(in); ``` ### 6. 使用`java.lang.ClassLoader.getSystemResourceAsStream()` 这是一...

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

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

    读取Properties文件的六种方法

    try (InputStream in = ClassLoaderResourceExample.class.getClassLoader().getResourceAsStream(fileName)) { props.load(in); System.out.println("Read properties from class loader: " + props); } catch ...

    API读取Properties文件的六种方法

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

    Java读取Properties文件的六种方法

    2. 使用`java.lang.Class.getResourceAsStream()` 如果你知道Properties文件相对于当前类的位置,可以使用`Class.getResourceAsStream()`方法。例如: ```java InputStream input = YourClass.class....

    java读取proterties的六种方法

    Java 读取 Properties 文件是应用程序中常见的操作,用于管理配置参数和系统属性。Properties 类是 Java 核心库的一部分,提供了加载和存储键值对的能力。以下是对标题和描述中所述六种方法的详细说明: 1. **使用 ...

    ClassLoader

    在Java中,`ClassLoader`是负责加载类到JVM的重要组件之一。它不仅能够确保每个被加载的类都具有唯一的标识符,还能处理类的生命周期中的加载、连接(验证、准备和解析)及初始化等关键步骤。 #### 类加载器的工作...

    使用J2SE API读取Properties文件的六种方法

    InputStream in = JProperties.class.getClassLoader().getResourceAsStream(name); Properties p = new Properties(); p.load(in); ``` 这个方法可以处理任何由类加载器加载的资源。 6. **使用java.lang....

    JAVA中如何得到文件路径.pdf

    ### JAVA中如何获取文件路径详解 #### 一、概述 在Java编程中,获取文件路径是一项基础而重要的技能。无论是处理本地文件还是部署在Web容器中的应用,了解如何正确地获取文件路径对于程序的正常运行至关重要。本文...

    java 读properties 文件六种方法

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

    详解Java项目中读取properties文件

    首先,最常用的读取properties文件的方法是利用`java.lang.Class`类的`getResourceAsStream(String name)`方法。例如: ```java InputStream in = getClass().getResourceAsStream("资源Name"); ``` 这种方法的...

    Java读取Properties文件几种方法总结

    使用class.getClassLoader()所得到的java.lang.ClassLoader的getResourceAsStream()方法也可以读取Properties文件。下面是一个示例代码: ```java InputStream in = JProperties.class.getClassLoader()....

Global site tag (gtag.js) - Google Analytics