我有一個應用程序GUI上gwt。使用這個GUI我想改變(這是一個子問題:如何更好地改變.properties文件(我知道如何使用org.apache.commons.configuration
讀取它們的屬性,但不知道如何編輯(如字符串或者如何...))).properties文件。例如:我寫了下面的屬性文件:如何找到以確切單詞開頭的字符串
################################################################################
# User permissions #
################################################################################
users = admin, root, guest
users.admin.keywords = admin
users.admin.regexps = test-5, test-7
users.root.keywords = root
users.root.regexps = *
users.guest.keywords = guest
users.guest.regexps = *
,因此,如何添加keywords
的管理,例如?
UPD: 這裏是我的配置類的工作中,我想更改配置文件:
public class Config {
private static final Config ourInstance = new Config();
private static final CompositeConfiguration prop = new CompositeConfiguration();
public static Config getInstance() {
return ourInstance;
}
public Config(){
}
public synchronized void load() {
try {
prop.addConfiguration(new SystemConfiguration());
System.out.println("Loading /rules.properties");
final PropertiesConfiguration p = new PropertiesConfiguration();
p.setPath("/home/mikhail/bzrrep/DLP/DLPServer/src/main/resources/rules.properties");
p.load();
prop.addConfiguration(p);
} catch (ConfigurationException e) {
e.printStackTrace();
}
final int processors = prop.getInt("server.processors", 1);
// If you don't see this line - likely config name is wrong
System.out.println("Using processors:" + processors);
}
public void setKeyword(String customerId, String keyword){
prop.setProperty("users." + customerId + ".keywords", prop.getProperty("users." + customerId + ".keywords") + ", " + keyword);
prop.
}
public void setRegexp(String customerId, String regexp)
{}
}
這看起來像是最好的解決方案。以及如果我想要某些屬性具有多個值,如:'users.guest.keywords = keyword1,keyword2,keyword3',該怎麼辦?是更好的'prop.setProperty(prop.getString(「users。」+ login +「.keywords」)+ new關鍵字)'? – 2013-04-09 13:38:10
您可以根據您的便利和應用程序要求 – Jabir 2013-04-09 13:57:24