分享

用类加载器的方式管理资源和配置文件

 昵称21365845 2015-06-19


java读取properties文件

获得配置文件的 第一种 方法:

 

 

InputStream ips = new FileInputStream("config.properties");

Properties props = new Properties();

props.load(ips);

ips.close();

一定要用完整的路径,但完整的路径不是硬编码,而是运输出来的

       例:getRealPath(); //金山词霸/内部


获得资源文件的 第二种 方式:(最常用的,但不能取代 IO 的方式)

每一个 .class 文件都被加载到内存中,这是类加载器的功能。类加载器不但能加载.class文件,还能加载普通文件,例:

InputStream ips = ReflectHashCode.class.getClassLoader().getResourceAsStream(“cn/itcast/day1/config.properties”);

 

//在cn/itcase/day1 目录下查找 config.properties 文件

//通过类的class找到类加载器( getClassLoader() ), 然后用类加载器加载普通文件( getResourceAsStream(), 在classpath指定的目录下逐一的查找要加载的文件 ) 

配置文件都放在 存放类( .class)文件的目录下

 

获得资源文件的 第三种 方式

class 本身也自带一种加载资源文件的方式,实际上是内部调用了classloader,例:

InputStream ips = ReflectHashCode.getResourceAsStream(“config.properties”);

只需要写要加载的配置文件的名字就可以,不需要写目录,相对路径,默认在自己所在的包下面查找。如果在所在包的子包下面,路径添加子包名称,例:resource/config.properties

还可以用绝对路径如果上例改为,cn/itcast/day1/config.properties 就成了绝对路径,默认从classpath的根目录下查找,这时候就要从根开始写上完整的绝对路径


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多