黑马程序员技术交流社区

标题: 关于资源访问的问题 [打印本页]

作者: 贾振凯    时间: 2013-4-10 23:12
标题: 关于资源访问的问题
本帖最后由 贾振凯 于 2013-4-16 21:39 编辑
  1. public class LoaderSourcePath {

  2. public static void main(String[] args){
  3. readPro();
  4. }

  5. public static void readPro(){
  6. //为什么通过当前线程类不可以像普通class一样访问包里面的资源???????
  7. // System.out.println(Thread.currentThread().getClass().getResource("packagesql.properties"));

  8. /*
  9. * 通过当前线程上下文类加载器可以像普通的类加载器一样访问classpath目录下的资源
  10. */
  11. System.out.println(Thread.currentThread().getContextClassLoader().getResource("zhenkai/lianxi/packagesql.properties"));
  12. }
  13. }
复制代码

作者: 郭强    时间: 2013-4-13 01:05
可以通过当前线程类访问包里的资源,不过资源路径前,你得加上“/”,表示从跟路径开始查找你的资源。
类加载器和普通类的访问资源的起始路径不同,可以参看张孝祥老师的高新技术视频中关于类加载器的部分,有详细的解答
作者: 王洪宇    时间: 2013-4-14 10:35
有一种办法可以访问资源文件:
在com/itheima目录下有一个资源文件:test5.properties,通过ResourceBundle类可以像访问java类那样
得到这个资源文件。这种方式是只读的,如果感兴趣可以看下api
//注意com.itheima.test5后面没有.properties后缀
ResourceBundle res = ResourceBundle.getBundle("com.itheima.test5");
//获取绑定资源的对应key的值
String url = res.getString("url");
作者: 黄玉昆    时间: 2013-4-14 14:10
如果问题未解决,请继续追问,如果没有问题了,请将帖子分类 改为“已解决”,谢谢




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2