/**
* 對應配置文件類,
*/
package com.up72.parkSys.ThirdParty;
import java.io.IOException;
import java.io.InputStream;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Properties;
public final class StaApiConfig {
/**
* 調試變量,用以打印調試錯誤信息
*/
public static boolean DEBUG = false;
/**
* 系統配置文件名稱 例如:xxxxx.properties配置文件
*/
private final static String SYSTEM_CONFIG = "StaApiConfig.properties";
/**
* 單子模式實例
*/
private static StaApiConfig config;
/**
* map
*/
private Map<String, String> params;
private StaApiConfig() {
load();
}
/**
* 單子模式實例方法
*
* @return
*/
public static StaApiConfig instants() {
if (null == config) {
config = new StaApiConfig();
}
return config;
}
/**
* 重新載入資源文件
*/
public void reload() {
load();
}
/*
* 載入properties資源文件
*/
@SuppressWarnings({"unchecked"})
private void load() {
if (null == this.params) {
this.params = new HashMap<String, String>();
} else {
this.params.clear();
}
Properties properties = new Properties();
InputStream inputStream = this.getClass().getClassLoader()
.getResourceAsStream(SYSTEM_CONFIG);
try {
properties.load(inputStream);
Iterator it = properties.keySet().iterator();
while (it.hasNext()) {
Object key = it.next();
if (null != key && !key.toString().equals("")) {
String value = properties.getProperty(key.toString());
params.put(key.toString().trim(), value.trim());
}
}
} catch (IOException e) {
if (DEBUG) {
e.printStackTrace();
}
}
}
/**
* 獲得資源文件中指定key的的value值
*/
public String getValue(String key) {
return this.params.get(key);
}
}
/**
* 配置文件中的內容 例如:StaApiConfig.properties
*/
TEST_KEY=100001
// 取得配置文件中的內容
public class TestProperties {
public static void main(String[] args) {
String testKey = LqxgConfig.instants().getValue("TEST_KEY");
}
}