我正在尝试为Web应用程序构建缓存,下面是我到目前为止的上述代码。必须在应用程序启动时加载此缓存。
@Service
public class CacheBuilder {
private MultiKeyMap cache = new MultiKeyMap();
@Autowired
private ConfigurationDAO configurationDAO;
public void loadConfigurations() {
Map<String, Collection<Config>> map = null;
try {
if (cache != null || cache.isEmpty()) {
map = configDAO.loadConfigs();
map.forEach((k, v) -> {
v.forEach((c) -> {
cache.put(k, c.getAttributeName(), c.getAttributeValue());
});
});
}
} catch (DaoException e) {
throw new RuntimeException(e);
}
}
public Object getValue(String key1, String key2) {
return cache.get(key1, key2);
}
public void clearCache() {
if (cache != null) {
cache.clear();
}
}
public String printCache() {
return cache.toString();
}
}
我目前正在使用spring boot应用程序,我正在尝试改进我的伪代码库以及我想要的内容。
如果我执行第2步,我该如何实现第1步?
任何人都可以向我推荐一些指示吗?