`
zealotds
  • 浏览: 122334 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

关于Java中的getResource()方法

    博客分类:
  • java
阅读更多
本文摘机自 Accessing Resources in a Location-Independent Manner

tag: java,resource,location independent

Resource:
/ separated string
/<shortName>.<extension>

System Resource:
CLASSPATH
A resource may be found in a different entry in CLASSPATH than where the class is loaded

Class Loader:
all class loaders search for a resource as system resource firstly
AppletClassLoader - system resource > JAR > CODEBASE > remote

Resouce Name:
replace "." with "/" in fully qualified package name
and add resource name as "<name>.<ext>"
absolute name starts with "/", otherwise it is relative

Manipulating Resource:
return null when not exist or permission denied
use URL.openStream to open the returned URL
use (ImageProducer)URL.getContent to get image stored in the Resource

Security:
return null when in security context addresses existence attacks
ClassLoader will not provide access to the contents of a .class file
no restriction regarding non-system class loader found resource
resource in directory - getResource() use File.exists() which use checkRead() in the security manager
resource in JAR - succeed for all files regardless of system or non-system class





分享到:
评论

相关推荐

    java项目中获取路径详解

    在 Java 项目中,获取相对路径可以使用 `getResource` 方法。这个方法可以返回当前类的相对路径。在静态方法中,可以使用 `Test.class.getResource("").getPath()`,而在非静态方法中,可以使用 `this.getClass()....

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

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

    java-loadresource.rar

    本篇文章将详细探讨Java提供的两种主要方法:`Class.getResource`和`Class.getResourceAsStream`,用于加载类路径下的资源文件。 首先,`Class.getResource`方法返回一个`URL`对象,它表示资源的位置。这个方法接受...

    Java Resource

    4. **尝试使用Resources类**:自Java 6开始,`java.nio`包下的`Resources`类提供了一种更简洁的方式来获取类路径中的资源,如`Resources.getResource("filename")`。 5. **资源的国际化**:在处理多语言环境时,...

    解决java打包之后无法加载静态资源的问题SWTResourceManager.java源码

    这是因为通过class.getResource()方法在IDEA中运行的路径和生成jar包获取的的路径是不同的。打成jar包后,获取图片的路径中有"xxx.jar!"这里面的内容是不能够被操作系统识别出来的,因此直接通过路径来获取文件是不...

    解决Could not get resource 最笨最实用的方法

    解决Could not get resource 最笨最实用的方法 当你在千度万度,找不到方法的时候,静下心来,和我一起: **第一** 找到问题的所在; 编译器描述没有找到文件,我们按照他的路径去搜索文件,关键字(lint) ...

    JAVA中三种URL连接方法

    ### JAVA中三种URL连接方法详解 #### 引言 在JAVA编程中,处理网络资源的能力是必不可少的。通过JAVA的`java.net`包,开发者能够轻松地与远程服务器交互,获取或发送数据。本文将深入探讨JAVA中三种常见的URL连接...

    java文件路径获取

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

    search resource about java

    1. **Class.getResource() 和 Class.getResourceAsStream()**:这两个方法允许我们通过类加载器获取到类路径下的资源。例如,`getClass().getResource("/filename.txt")`返回一个URL,`getClass()....

    java中相对路径与绝对路径的问题

    在 Java 编程的 Class 中,我们可以使用 `Class.getResource()` 方法来获取相对路径和绝对路径。例如,我们可以使用 `FileTest.class.getResource("")` 来获取当前类的相对路径,使用 `FileTest.class.getResource(...

    Java操作Redis,实现String、List、Map的set和get

    return jedisConnectionFactory.getResource(); } // 将上面的方法迁移到这里,并添加try-catch块 } ``` 然后编写Junit测试类`RedisServiceTest`: ```java @RunWith(SpringRunner.class) @SpringBootTest ...

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

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

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

    URL url = classloader.getResource(path); return getClasses(new File(url.getFile().replaceAll("%20", " ")), pk); } ``` 这个方法使用 `ClassLoader` 来获取当前类的资源 URL,然后将其转换为文件对象,以便...

    在Java程序中获取当前运行程序的路径

    首先,我们可以通过`java.lang.Class`类的`getResource`或`getResourceAsStream`方法来获取类路径中的资源文件路径。这两个方法都是在类路径中查找资源,返回一个URL对象,从中可以获取路径信息。例如,如果我们有一...

    Java路径问题最终解决方案之一.

    2. **使用 `FileTest.class.getResource("/")`**:该方法返回当前classpath的绝对URI路径,例如:`file:/D:/java/eclipse32/workspace/jbpmtest3/bin/`。 3. **使用 `Thread.currentThread().getContextClassLoader...

    JAVA获取各种路径总结

    - **使用 `getResource` 和 `getResourceAsStream` 方法** - 示例: - `getClass().getResourceAsStream(filePath);` (`filePath` 例如为 "/filename",默认从 WEB-INF/classes 开始查找,适用于 Tomcat 等容器...

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

    通过上述介绍可以看出,在Java中获取文件路径的方法多种多样,每种方法适用于不同的场景。掌握这些技巧对于编写高效、稳定的Java应用程序至关重要。在实际开发过程中,可以根据具体需求选择最适合的方法来获取文件...

    Java Resource路径整理总结

    我们可以通过 ClassLoader 来获取 classpath,具体方法就是 ClassLoader.getResource(String name)。而获取 ClassLoader 的方式很多,比如 Thread.currentThread().getContextClassLoader()、clazz.getClassLoader()...

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

    - **在使用`getResource()`方法时**,如果路径不以`/`开头,则默认是从调用该方法的类的所在位置开始查找,而以`/`开头则表示从类路径的根目录开始查找。 #### 总结 通过以上分析可以看出,在Java中处理文件路径时...

    使用java代码获取yml文件中指定的内容(csdn)————程序.pdf

    接着,通过`URL`对象定位到"application.yml"文件,这里使用了`Test02.class.getClassLoader().getResource()`方法,它可以从类路径中找到资源文件。 ```java Yaml yaml = new Yaml(); URL url = Test02.class....

Global site tag (gtag.js) - Google Analytics