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

Class.getResource() & ClassLoader.getResource()资源获取

    博客分类:
  • java
阅读更多

Class

      使用Class的时候,传递给它的资源名称既可以是绝对路径,也可以是相对路径。而反斜线(/)一般是代表编译后的class的根目录,而相对路径则是相对于当前调用者所属类的路径。

ClassLoader

      使用ClassLoader的时候,资源文件被看作一个类文件来加载的,传递给ClassLoader的名称必须符合Java规范定义的名称(Binary Name),对应Java的类而言,那就是包名.类名,如果把Java的Class文件也看成一种资源的话,那么这个资源的名称就是:包名.类名.class, 例如java.lang.String.class,这种格式的资源名称都是从编译后的class根目录开始表示的(Java包的文件层次结构),而且对classpath路径上的Jar包也是适用的。对于一般意义上的资源文件,相比Java的Class文件只是文件后缀不同而已。

 

原文链接:http://blog.csdn.net/redhat456/article/details/5729101

分享到:
评论

相关推荐

    java文件路径获取

    - 当使用`ClassLoader.getResource`或`ClassLoader.getResourceAsStream`时,路径必须以 `/` 开头,否则可能无法找到资源。 - `getClassLoader().getResource("/")`会返回`classpath`的根目录,但`getClassLoader()....

    JAVA如何获取工程下的文件

    `Class.getResource` 方法允许我们通过类对象获取资源文件。这个方法返回一个 `URL` 对象,表示资源的位置。它会根据类路径查找资源,因此资源必须包含在类路径(classpath)中。 #### 示例代码: ```java public ...

    Java 读取资源文件

    - 类加载器(`ClassLoader`)也可以用来获取资源,这对于不是从特定类而是从全局类路径中获取资源很有用。例如: ```java ClassLoader classLoader = Thread.currentThread().getContextClassLoader(); URL ...

    SpringBoot如何读取war包jar包和Resource资源

    在读取资源文件时,经常使用 Class.getResource() 或 ClassLoader.getResource() 方法。两种方法都可以读取资源文件,但是它们的使用场景和返回值不同。 Class.getResource() 方法返回 URL 对象,表示资源文件的...

    java项目相对路径与绝对路径问题分析

    在实际开发中,获取资源的绝对路径有多种方法,这些方法可以帮助我们根据不同的需求来定位资源: 1. `FileTest.class.getResource("")`:返回当前类`FileTest.class`所在目录的URI,但不包括`FileTest.class`自身。...

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

    System.out.println(Test.class.getClassLoader().getResource("")); ``` 4. **使用`ClassLoader.getSystemResource("")`**: - 获取系统类加载器的资源路径。 - 示例代码: ```java System.out.println...

    Java-recourse.rar_java读取recouse

    3. **使用`Class.getResourceAsStream()`**:直接从类的上下文中获取资源的输入流,无需转换为`URL`。例如: ```java InputStream in = YourClass.class.getResourceAsStream("/path/to/resource.txt"); // 读取...

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

    当你需要获取与类相关的资源文件的绝对路径时,可以使用 `Class.getResource()` 或 `Class.getResourceAsStream()` 方法。这些方法返回一个 `java.net.URL` 对象,可以通过调用 `getPath()` 来获取路径字符串。例如...

    java classloader classpath 张孝祥

    5. `Thread.currentThread().getContextClassLoader().getResource("")`:获取当前线程上下文类加载器的根路径,如`file:/D/workspace/jbpmtest3/bin/`。 6. `ServletActionContext.getServletContext().getRealPath...

    java读取resource目录下文件的方法示例

    1. 使用`Class.getResource`或`ClassLoader.getResource`,这两个方法都需要传入相对类路径的字符串。 2. 使用Guava的`Resources.getResource`,它提供了一种更简洁的接口,同时支持绝对和相对路径。 理解并掌握...

    Java路径问题汇总.pdf

    - 使用`Class.getResource()`或`ClassLoader.getResource()`来加载类路径内的资源。 - 对于文件操作,考虑使用`java.nio.file`包,它提供了更强大的文件系统操作,如`Paths.get()`和`Files`类。 理解并正确处理...

    java或wed解决路径问题

    4. `DebitNoteAction.class.getClassLoader().getResource("")` 或 `ClassLoader.getSystemResource("")` 同样返回当前ClassPath的绝对URI路径。 5. `System.getProperty("user.dir")` 返回服务器的相对路径,通常是...

    Java中获取文件路径的几种方式

    例如,通过`this.getClass().getResource()`方法可以获取资源文件的路径。 ##### 示例代码: ```java File f = new File(this.getClass().getResource("/").getPath()); System.out.println(f.getAbsolutePath()); ...

    JAVA获取各种路径总结

    System.out.println(FileTest.class.getClassLoader().getResource("")); System.out.println(ClassLoader.getSystemResource("")); System.out.println(FileTest.class.getResource("")); System.out.println...

    web中的路径问题

    - `DebitNoteAction.class.getClassLoader().getResource("")`和`ClassLoader.getSystemResource("")`都是获取当前类路径的根目录。 5. **使用系统属性获取路径**: - `System.getProperty("user.dir")`:获取...

    JAVA输出各种信息

    `ClassLoader`类提供了获取资源路径的方法,例如`ClassLoader.getSystemResource("")`可以获取系统类加载器的资源路径,而`Class_Name.class.getResource("/")`和`Class_Name.class.getResource("")`则分别用于获取...

    java类动态获取相对路径

    `ClassLoader`提供了`getResource`和`getResourceAsStream`方法来获取资源的URL或输入流。例如,如果我们有一个名为`res.txt`的文件与`MyClass`同级,可以这样获取其URL: ```java URL resourceUrl = classLoader...

    java文件路径操作详细[归类].pdf

    例如,`ClassLoader`类的`getResource(String name)`和`getResourceAsStream(String name)`方法,以及`ResourceBundle`类的`getBundle(String path)`都是基于此类路径查找资源。 然而,尽管相对路径在使用上更为...

    java中File的相对路径与绝对路径总结

    - 除了通过类的`getResource()`方法外,还可以通过`ClassLoader`来获取资源: ```java String f = Hello.class.getClassLoader().getResource("4.txt").getPath(); ``` - 需要注意的是,这种方式同样只能获取到...

Global site tag (gtag.js) - Google Analytics