Java程序中的配置文件的存放和读取(2)

来源:互联网 责任编辑:栏目编辑 发表时间:2013-07-02 05:25 点击:

  Java程序并没有类似于VB那种全局对象,但如果我们观察位于上述目录结构中的database.properties文件,应该发现其处于应用程序的 CLASSPATH中,这样,我们就可以使用Java中的类装载器中的相关的方法,读出这些配置文件的信息,该类名为ClassLoader.比如,在上例中,我们可以先得到ConnectinPool的类装载器,然后测定ConnectionPool类所在的包路径,然后利用 ConnectionPool所在的包目录读出database.properties文件的信息,对应的伪代码如下:

ClassLoader loader=ConnectionPool.class.getClassLoader();
得到ConnectionPool所在的包名;
将包名转换为对应的目录名,存入一个名为path的字符串变量中;
调用loader的getResourceAsStream(path+"database.properties"),得到输入流

  下面是一个可实际运行的样例代码片段,它可自动测定传入的类所在的包目录,返回传入的属性文件所代表的输入流。它还有一个附加的功能:如果属性文件直接放到了当前类所在的根目录(比如位于JAR文件的根目录或WAR文件的WEB-INF/classes目录中)、系统的用户目录系统、系统其他的类路径中时,它也可以找到;当然,如果还是找不到,它将返回null.具体的代码如下:

public class PropHelper{
/**
*guessPropFile:
*@param cls:和要寻找的属性文件处于相同的包中的任意的类
*@param propFile:要寻找的属性文件名
*/
public static java.io.InputStream guessPropFile(Class cls,String propFile){
try{
//得到类的类装载器
ClassLoader loader=cls.getClassLoader();

//先从当前类所处路径的根目录中寻找属性文件
java.io.InputStream in=loader.getResourceAsStream(propFile);
if(in!=null) return in;

//没有找到,就从该类所处的包目

发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
用户名: 验证码:点击我更换图片
最新评论 更多>>

推荐热点

  • Java编程语言的八大优点
  • JVM对象生命周期详细介绍
  • Java平台上的CRM系统
  • Java 算数测试小程序
  • Command(命令模式)
  • Java环境 使用Resin在NT环境下配置JSP环境
  • Java 一个简单的画图程序
  • Java 日历的小程序
  • Java 统计代码的小工具
网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
Copyright © 2008-2015 计算机技术学习交流网. 版权所有

豫ICP备11007008号-1