/**
* 环境变量名称
*/
public static final String ENV = "PMSENVS";
/**
*
* <p>
* 根据指定的目录及文件在配置好的环境变量下查询配置文件
*
* @param parentDirName
* 父级目录
* @param properties
* 配置文件名称
* @return
* @throws Exception
*/
public static String getEnv(String parentDirName, String properties)
throws Exception {
StringBuilder path = new StringBuilder();
String env = System.getenv(ENV);
if (env != null && !"".equals(env)) {
path.append(env).append(File.separator).append(parentDirName)
.append(File.separator).append(properties);
}
return path.toString();
}
/**
*
* <p>
* 加载指定目录所有文件
*
* @param parentDirName
* @return
* @throws Exception
*/
public static String getEnv(String parentDirName) throws Exception {
StringBuilder path = new StringBuilder();
String env = System.getenv(ENV);
if (env != null && !"".equals(env)) {
path.append(env).append(File.separator).append(parentDirName)
.append(File.separator).append("*.properties");
}
return path.toString();
}
/**
*
* <p>
* 获取配置文件所在的父级目录路径
*
* @param parentDirName
* @return
*/
public static String getEnvFilePathOnly(String parentDirName) {
StringBuilder path = new StringBuilder();
String env = System.getenv(ENV);
if (env != null && !"".equals(env)) {
path.append(env).append(File.separator).append(parentDirName)
.append(File.separator);
}
return path.toString();
}
读取配置文件属性和属性对应的值
public static int testclickhouse() {
StringBuilder path = new StringBuilder();
String env = System.getenv(ENV);
if (env != null && !"".equals(env)) {
path.append(env).append(File.separator).append("db")
.append(File.separator).append("jd-jdbc.properties");
}
System.out.println(path.toString());
int flag = getProperties(null, null, null);
return flag;
}
public static int getProperties(String key, String parentDirName,
String properties) {
// 读取属性文件
BaseProperties props = BaseProperties.getProperties(
EnvHandler.getEnvFilePathOnly("db"), "jd-jdbc");
String propValue = null;
if (props != null) {
propValue = props.getProperty("flag");
String drivers = props.getProperty("datasource.driverclassname");
String urls = props.getProperty("datasource.url");
propValue = props.getProperty("flag");
} else {
}
return Integer.parseInt(propValue);
}