Java中获取配置/资源文件

阅读更多
几乎所有的系统都需要通过获取配置/资源文件来方便配置系统
但怎样获取资源文件呢

java的应用通常把配置文件和工程中的其他class放在一起(如log4j),原因是可以方便的使用classLoader的 getResourceAsStream()方法获取资源(其实java内部就是这样来
load class的),下面是一个简单例子:

比如你把文件(abc.properties)放到com.yourcompany.common包里面,在确保classpath包括该包的情况
下就可以按下面的方法获取资源

ClassLoader cl = this.getClass().getClassLoader();
InputStream is = cl.getResourceAsStream("com/yourcompany/"+abc.properties)

进一不,如果abc.properties是一个标准的properties文件的话,比如其内容如下
messageA = Ok!

还可以这样获取配置信息
Properties props = new Properties();
props.load(is);
String messageA = props.getProperty("messageA ");

则messageA== "Ok"

当然properties也可以是XML格式,只要他符合http://java.sun.com/dtd/properties.dtd的规范并且包含
的DOCTYPE declaration,就可以用props.loadFromXML(InputSteam in)方法载入property


ps:property 也提供store()和storeToXML方法保存属性
关于classLoader也可以看看 《classloader相关基础知识》 这个文章 

你可能感兴趣的:(Java,log4j,SUN,XML)