import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.Iterator;
import java.util.Properties;
import org.springframework.util.StringUtils;
public class ProperityUtils {
public static String loadProperties2System(String location) throws IOException {
String configLocation = location;
File cnf;
if (!StringUtils.hasLength(location)) {
configLocation = "./config";
cnf = new File(configLocation);
if (!cnf.exists() || !cnf.isDirectory()) {
configLocation = "../config";
cnf = new File(configLocation);
}
} else {
cnf = new File(location);
}
if (cnf.exists() && cnf.isDirectory()) {
File[] files = cnf.listFiles();
if (files != null) {
File[] pfiles = files;
int length = files.length;
for (int i = 0; i < length; ++i) {
File file = pfiles[i];
if (file.isFile() && file.getName().endsWith(".properties")) {
Properties ppt = new Properties();
FileInputStream fi = new FileInputStream(file);
Throwable e = null;
try {
ppt.load(fi);
Iterator<String> iterator = ppt.stringPropertyNames().iterator();
while (iterator.hasNext()) {
String key = iterator.next();
System.setProperty(key, ppt.getProperty(key));
// if (!System.getProperties().containsKey(key)) {
// }
}
} catch (Throwable e2) {
e = e2;
throw e2;
} finally {
if (fi != null) {
if (e != null) {
try {
fi.close();
} catch (Throwable e3) {
e.addSuppressed(e3);
}
} else {
fi.close();
}
}
}
}
}
}
} else {
System.out.println("“" + configLocation + "” is not a directory. Can not load any properties file.");
}
return configLocation;
}
public static String loadProperty2System(String location) throws IOException {
File file = new File(location);
if (file.isFile() && file.getName().endsWith(".properties")) {
Properties ppt = new Properties();
FileInputStream fi = new FileInputStream(file);
Throwable e = null;
try {
ppt.load(fi);
Iterator<String> iterator = (Iterator<String>) ppt.stringPropertyNames().iterator();
while (iterator.hasNext()) {
String key = iterator.next();
System.setProperty(key, ppt.getProperty(key));
// if (!System.getProperties().containsKey(key)) {
// }
}
} catch (Throwable e2) {
e = e2;
throw e2;
} finally {
if (fi != null) {
if (e != null) {
try {
fi.close();
} catch (Throwable e3) {
e.addSuppressed(e3);
}
} else {
fi.close();
}
}
}
} else {
System.out.println("“" + location + "”,Can not load any property file.");
}
return file.getAbsolutePath();
}
}