Expirable<E>
Posted by Bruce Tsai
說明
實作存取資料元件,提供一組未實作方法 get() 取得實際資料,並暫存於實體中,並有一個資料逾期的設定,在資料逾期後重新讀取。
範例
public class Program {
// 每 5 分鐘重新讀取一次設定
static Expirable<Properties> config =
new Expirable<Properties>(TimeUnit.MINUTES.toMillis(5)) {
@Override
protected Properties get() throws Exception {
return AppConfig.read("config.properties");
}
};
public static void main(String[] args) {
if (config.present()) {
String url = config.value().getProperty("url");
// more code here
}
}
}