使用ClassLoader加载包内的资源
来源:互联网 发布:mac word转pdf原页面 编辑:程序博客网 时间:2024/05/04 18:38
ClassLoader可以把包(jar包,war包)内的class文件加载到 JVM中,第一步就是将class文件以stream的方式读取出来。ClassLoader也将这个加载资源的方法 getResourceAsStream暴露了出来。编程时可以使用这个方法来加载包内的任何资源,比如properties文件,图片等。
使用ClassLoader加载资源文件
当使用ClassLoader加载资源的时候,参数应该是资源文件在包内的路径,不以“/”开头。对于classloader.getres.GetResourceTest包结构存在test.properties文件,
如果要加载test.properties。ClassLoader的getResourceAsStream的参数就是“classloader/getresource/test.properties”。
ClassLoader可以加载任何一个在classpath上存在的资源文件,可以在一个包内,也可以不在一个包内。简单来说,只要把资源文件也当作一个类来看待,把类的全路径名中的“.”换成“/”就可以了。
getResourceAsStream的参数也可以有“..”,用来回到上一层目录。
使用Class加载资源文件
Class类也有一个getResourceAsStream方法。对于同一个包中的资源文件,使用Class加载资源文件会更简单。
比如上例中如果GetResourceTest类想加载相同包下的test.properties,只要使用下面的代码就行了。
GetResourceTest.class.getResourceAsStream(“test.properties”);
- 对于不是以“/”开头的参数,就认为这个路径是相对于当前类的路径,所以加载当前包中的资源只要写资源文件的名字就可以了。方法最大的一块代码就是为了得到当前类的路径,然后和传进来的相对路径参数拼起来,作为资源文件的绝对路径丢给CL。
- 对于以“/”开头的参数,就认为参数是资源文件的绝对路径,将这个斜线去掉之后,丢给CL去加载就行了。
- 使用ClassLoader加载包内的资源
- 使用ClassLoader加载包内的资源
- 使用ClassLoader加载资源的示例代码
- 使用包内资源
- 操作jar包内的资源文件方法,通过classLoader方式
- 对classLoader加载资源的理解
- 用ClassLoader加载资源
- java ClassLoader加载资源
- java利用classloader加载资源
- 使用ClassLoader加载类
- 使用classloader加载文件
- ClassLoader的相关资源
- classloader 的加载顺序
- ClassLoader的加载顺序
- 应用内加载资源
- ios内加载资源
- 用ClassLoader类加载资源文件
- java ClassLoader 类加载资源详解
- 【BZOJ 1007】[HNOI2008]水平可见直线 半平面交
- 一个没用的有用说明
- 程序员在线工具
- c++中 动态联编,静态联编和虚函数
- 总结Android四大组件是什么,分别简要说明功能。
- 使用ClassLoader加载包内的资源
- 上班族训练安排。
- 根据资源路径加载ZIP压缩包中指定的资源
- 执行shell脚本错误
- SDUT 1488 数据结构实验:连通分量个数
- MFC中ASSERT()和VERIFY()区别
- Random用法及常用方法总结
- Java多线程----java 对象锁
- JQuery(3)