我有几个全局变量,主要不会改变。有时(每隔几个月)我想改变它们。
它们保存在数据库中。
问题是:如果我更改静态变量,其他服务仍然使用旧值。我究竟做错了什么?
class Config {
public static Default DEFAULTS = new Default();
//several other static defaults
public static in DIGIT = DEFAULTS.getDigit();
}
class Default() {
private int digit = 0;
//get+set
}
class Service() {
updateDefaults() {
Config.DEFAULTS.setDigit(2);
dao.update(Config.DEFAULTS);
}
}
问题:其他使用的服务Config.DIGIT;
仍然使用旧的默认值digit = 0
.