我有一個對象叫做ApplicationProperties
。該對象具有私有字段和公共getter方法。非常微不足道。如何僅在設置了對象的屬性後加載Spring Bean?
if (properties == null) {
properties = new ApplicationProperties();
SettingsLoader settingsLoader = new SettingsLoader(properties);
settingsLoader.loadApplicationSettings();
}
return properties;
我也有春天豆類,其中一些依賴於ApplicationProperties
閱讀一些路徑等,這對於長時間工作的罰款。 JDK是Oracle JDK 1.6
。但是最近當我部署在OpenJDK 1.7 ICEDTEA
中時,我得到了一些NullPointerException
,因爲spring bean使用的應用程序屬性具有空字段(未完全初始化)。
可能是平行類加載是在Open JDK的情況下完成的(不確定它)。
我該如何確保在ApplicationProperties
完全準備好後才能實例化所有彈簧豆(數量超過200個 - 通過批註中的許多)?
實際上一些bean具有使用一些非bean類(使用應用程序屬性)設置的靜態字段。這是複雜的事情。 – phoenix
有沒有其他方法?謝謝。 – phoenix