Class.getResources()和classLoader.getResources()区别
Class.getResource(String path)
path不以’/'开头时,默认是从此类所在的包下取资源; path 以’/'开头时,则是从ClassPath根下获取;
package testpackage; public class TestMain {public static void main(String[] args) {System.out.println(TestMain.class.getResource(""));System.out.println(TestMain.class.getResource("/"));} }
输出结果
file:/E:/workspace/Test/bin/testpackage/ file:/E:/workspace/Test/bin/
如果我们想在TestMain.java中分别取到1~3.properties文件,该怎么写路径呢?代码如下:
package testpackage;public class TestMain {public static void main(String[] args) {// 当前类(class)所在的包目录System.out.println(TestMain.class.getResource(""));// class path根目录System.out.println(TestMain.class.getResource("/"));// TestMain.class在<bin>/testpackage包中// 2.properties 在<bin>/testpackage包中System.out.println(TestMain.class.getResource("2.properties"));// TestMain.class在<bin>/testpackage包中// 3.properties 在<bin>/testpackage.subpackage包中System.out.println(TestMain.class.getResource("subpackage/3.properties"));// TestMain.class在<bin>/testpackage包中// 1.properties 在bin目录(class根目录)System.out.println(TestMain.class.getResource("/1.properties"));} }
Class.getClassLoader().getResource(String path)
path不能以’/'开头时; path是从ClassPath根下获取;
package testpackage; public class TestMain {public static void main(String[] args) {TestMain t = new TestMain();System.out.println(t.getClass());System.out.println(t.getClass().getClassLoader());System.out.println(t.getClass().getClassLoader().getResource(""));System.out.println(t.getClass().getClassLoader().getResource("/"));//null } }
输出结果
class testpackage.TestMain sun.misc.Launcher$AppClassLoader@1fb8ee3 file:/E:/workspace/Test/bin/ null
使用Class.getClassLoader().getResource(String path)可以这么写
package testpackage;public class TestMain {public static void main(String[] args) {TestMain t = new TestMain();System.out.println(t.getClass().getClassLoader().getResource(""));System.out.println(t.getClass().getClassLoader().getResource("1.properties"));System.out.println(t.getClass().getClassLoader().getResource("testpackage/2.properties"));System.out.println(t.getClass().getClassLoader().getResource("testpackage/subpackage/3.properties"));} }
From:http://www.cnblogs.com/yejg1212/p/3270152.html
转载于:https://www.cnblogs.com/xiaoliangup/p/9143180.html
Class.getResources()和classLoader.getResources()区别相关推荐
- class.getResources与ClassLoader.getResources的区别
class.getResources与ClassLoader.getResources有不同的访问途径,如果访问方式不对,只会得到null值. Maven工程目录如下 如上图,编译后,maven会将s ...
- Java ClassLoader getResources()方法与示例
ClassLoader类的getResources()方法 (ClassLoader Class getResources() method) getResources() method is ava ...
- 【java】ClassLoader.getResources加载资源的顺序
目录 前言 代码说明 目录结构 FromMultiJar/pom.xml 代码 编译后目录结构 启动命令 ClassLoader.getResources加载资源的顺序 先在本应用(FromMulti ...
- 【java】ClassLoader.getResources加载资源
目录 前言 代码说明 目录结构 FromMultiJar/pom.xml 代码 编译后目录结构 启动命令 执行结果 前言 maven多模块项目 代码说明 目录结构 LoadResources ├─Fr ...
- ClassLoader.getResources 能搜索到的资源路径
代码如下 public static void main(String[] args)throws Exception {ClassLoader cl = xxxx.class.getClassLoa ...
- classloader.getresources() 介绍
转载自: https://www.cnblogs.com/bhlsheji/p/4095699.html ◆普通情况下,我们都使用相对路径来获取资源,这种灵活性比較大. 比方当前类为com/bbebf ...
- java getresources方法_Java ClassLoader getResources()方法与示例
ClassLoader类getResources()方法getResources()方法在java.lang包中可用. getResources()方法用于标识具有给定资源名称的所有资源. getRe ...
- java getresources方法_java-如何正确使用ClassLoader.getResources()?
这是获取某个URL对象指向的File对象的最简单方法: File file=new File(url.toURI()); 现在,对于您的具体问题: 在META-INF"目录"中查找 ...
- 在 Java 的反射中,Class.forName 和 ClassLoader 的区别
前言 最近在面试过程中有被问到,在Java反射中Class.forName()加载类和使用ClassLoader加载类的区别.当时没有想出来后来自己研究了一下就写下来记录一下. 解释 在java中Cl ...
最新文章
- java 模仿支付成功_Java工程师薪资为何这么高?60W年薪如何轻松拿到手
- taro 如何使用dom_taro 事件处理
- 如何合并多个Django项目?
- OpenCL与异构并行计算
- 为什么你不该用Timer
- jsp-解决自写Servlet老是报错404
- 解决pod没有权限问题
- Linux下的指令:tail
- 3DMax环境贴图无法正常显示的一种解决方法
- python语言属于哪一种语言阅读答案_python是一种()-智慧树Python语言应用章节答案...
- 大数据扫黄如此精准,你中招了没
- CCF-A类+B类+C类(2019)
- 九宫格拼图,避免不可还原
- 【绝知此事要躬行】线性表之数组OJ
- 2022年内蒙古医院三基考试传染病学考前冲刺题及答案
- C# 判断有向图是否存在环
- 头哥实践教学平台 CC++程序设计(计算机程序设计)基本输入输出 第2关:整数四则运算表达式的输出格式控制
- Hadoop3.x完全分布式运行模式配置
- git color 让git有颜色
- X86:2:X86处理器架构
热门文章
- 《Dreamweaver CS6完美网页制作——基础、实例与技巧从入门到精通》——1.3 常用网页设计软件...
- androidHandler讲解
- PHP中的$_COOKIE与urlencode/decode的关系
- 性能翻倍 IBM借DS3500拓中低端存储市场
- 单链表倒数第K个节点的查找和显示
- 深度学习笔记三:Softmax Regression
- Zookeeper 入门
- 帆软报表加载(开始)完毕执行自定义JavaScript
- Mac 技术篇-应用程序被锁定无法进行卸载问题解决方法,文件、文件夹被锁定无法移入废纸篓处理方法,卡巴斯基被锁定如何进行卸载演示
- JavaScript 技术篇-js获取表格元素tr、th、td相对于父节点的索引。