先挂
import java.io.*;
import java.util.Properties;
import java.util.regex.Pattern;
public final class PropertiesUtil {
static final String PROP_Split = "^.*\\.properties$";
private static final Pattern PROP_Pattern = Pattern.compile(PROP_Split);
private static Properties properties = new Properties();
static {
ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
if (classLoader == null) classLoader = PropertiesUtil.class.getClassLoader();
String path = classLoader.getResource("").getPath().replaceAll("%20", " ");
File baseDir = new File(path).getParentFile();
loadDir(baseDir);
}
public static String get(String key) { return getProperties().getProperty(key); }
private static Properties getProperties() { return properties; }
private static void loadDir (File baseDir) {
for (File file: baseDir.listFiles())
if (file.isFile()){
if(PROP_Pattern.matcher(file.getAbsolutePath()).matches()) load(file);
} else loadDir(file);
}
private static void load (File destDir) {
try {
getProperties().load(new InputStreamReader(new FileInputStream(destDir), "UTF-8"));
} catch (IOException e) {
System.out.println(e);
}
}
}
Test:
public class Test {
public static void main(String[] args) {
System.out.println(util.PropertiesUtil.get("url"));
}
}
完全OJBK