Я ищу это поведение, используя Spring для ленивой инициализации некоторых константных синглетонов:
Map<String, Status> cache;
public Status getStatus(String name) {
if (!cache.containsKey(name)) {
Status status= new Status(name);
cache.put(name, status);
}
return cache.get(name);
}
Я смотрю на Spring Caching Guild здесь: ссылка
А теперь мой метод будет выглядеть так:
@Cacheable
public Status getStatus(String name) {
return new Status(name);
}
И он делает то, что мне нужно, но кэширование по определению является временным.Мне интересно, не слишком ли много накладных расходов, которые могут повлиять на производительность?Есть ли более простая альтернатива?