Java實現(xiàn)的properties文件動態(tài)修改并自動保存工具類
本文實例講述了Java實現(xiàn)的properties文件動態(tài)修改并自動保存工具類。分享給大家供大家參考,具體如下:
一、概述
利用commons-configuration讀取配置文件,并實現(xiàn)對配置文件的動態(tài)修改和自動保存。
Apache Common-Configuration工具可以從
Properties文件,XML文件,JNDI,JDBC數(shù)據(jù)源,System Properties,Applet parameters,Servlet Parameters等讀取相應(yīng)信息
使用步驟
前提,引入commons-configuration-1.6.jar這個JAR包,同時還必須映入commm-logging.jar,common-lang.jar和common-collection.jar
二、示例:
public class Config {
private static PropertiesConfiguration propConfig;
private static final Config CONFIG = new Config();
/**
* 自動保存
*/
private static boolean autoSave = true;
private Config() {
}
public static Config getInstance(String propertiesFile) {
//執(zhí)行初始化
init(propertiesFile);
return CONFIG;
}
/**
* 初始化
*
* @param propertiesFile
* @see
*/
private static void init(String propertiesFile) {
try {
propConfig = new PropertiesConfiguration(propertiesFile);
//自動重新加載
propConfig.setReloadingStrategy(new FileChangedReloadingStrategy());
//自動保存
propConfig.setAutoSave(autoSave);
} catch (ConfigurationException e) {
e.printStackTrace();
}
}
/**
* 根據(jù)Key獲得對應(yīng)的value
*
* @param key
* @return
* @see
*/
public Object getValue(String key) {
return propConfig.getProperty(key);
}
/**
* 設(shè)置屬性
*
* @param key
* @param value
* @see
*/
public void setProperty(String key, String value) {
propConfig.setProperty(key, value);
}
}
附:相關(guān)jar包本站下載地址如下:
更多關(guān)于java算法相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Java文件與目錄操作技巧匯總》、《Java數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Java操作DOM節(jié)點技巧總結(jié)》和《Java緩存操作技巧匯總》
希望本文所述對大家java程序設(shè)計有所幫助。
相關(guān)文章
Java利用遞歸實現(xiàn)樹形結(jié)構(gòu)的工具類
有時候,我們的數(shù)據(jù)是帶有層級的,比如常見的省市區(qū)三級聯(lián)動,就是一層套著一層。而我們在數(shù)據(jù)庫存放數(shù)據(jù)的時候,往往是列表形式的,這個時候可能就需要遞歸處理為樹形結(jié)構(gòu)了。本文就為大家介紹了Java利用遞歸實現(xiàn)樹形結(jié)構(gòu)的工具類,希望對大家有所幫助2023-03-03
@Value如何獲取yml和properties配置參數(shù)
這篇文章主要介紹了@Value如何獲取yml和properties配置參數(shù)的操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-07-07
Java中使用Lambda表達(dá)式和函數(shù)編程示例
這篇文章介紹了Java中使用Lambda表達(dá)式和函數(shù)編程示例,該文章會演示多個示列,分別是變量聲明上下文中的lambda、return語句上下文中的lambda、賦值上下文中的lambda、lambda在數(shù)組初始值設(shè)定項上下文中的用法等等,需要的朋友可以參考一下2021-10-10
Java中的ScheduledThreadPoolExecutor定時任務(wù)詳解
這篇文章主要介紹了Java中的ScheduledThreadPoolExecutor詳解,??ScheduledThreadPoolExecutor?繼承自?ThreadPoolExecutor,它主要用來在給定的延遲之后運行任務(wù),或者定期執(zhí)行任務(wù),ScheduledThreadPoolExecutor?的功能與?Timer?類似<BR>,需要的朋友可以參考下2023-12-12

