Java的ResourceBundle类是用来读取properties的资源文件的,很多国际化操作都使用该类。
我需要用这个读取自己自定义的properties文件,一开始是这么写ResourceBundle.getBundle("gis.properties");启动工程竟然发现不能找到资源文件的错误;nested exception is java.util.MissingResourceException: Can't find bundle for base name gis.properties, locale zh_CN
从网上搜了下才知道,如果是读取的文件带有“properties”后缀名,它会从工程根目录下找,这显然和我的本意是不一样的。如果是到classes下则去掉后缀就可以了。所以改成private ResourceBundle gisResource = ResourceBundle.getBundle("gis");则启动通过。
/**
*读取配置文件
*/
public class ConfigInfo
{
private static ResourceBundle cache = null;
static {
try{
cache = ResourceBundle.getBundle("merchantInfo");
}cache(Exception e){
e.printStackTrace();
}
}
public static String getValue(String key){
return cache.getString(key);
}
}