Spring Lazy Initialization с помощью Spring Cache - PullRequest
0 голосов
/ 08 июня 2018

Я ищу это поведение, используя 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);
}

И он делает то, что мне нужно, но кэширование по определению является временным.Мне интересно, не слишком ли много накладных расходов, которые могут повлиять на производительность?Есть ли более простая альтернатива?

...