@ Кэшируемое условное кэширование по полям запроса - PullRequest
0 голосов
/ 24 августа 2018

Я использовал spring @Cacheable для кэширования, как показано ниже:

@Cacheable
public Response mycall(Request request)

Теперь я хочу, чтобы этот вызов метода кэшировался, только если request.getId ()! = 3, где getId() - этометод public getter в классе Request.

Я видел код, в котором люди указали условие unless в @Cacheable, но я видел условия, которые указывались только в ответе метода, а не в запросе.Ссылка: Как мне указать Spring cache не кэшировать нулевое значение в аннотации @Cacheable

Есть ли способ добиться того же с условием, указанным в поле запроса

1 Ответ

0 голосов
/ 26 июля 2019

Вы пробовали атрибут условия?

//It will cache only if the actor's age is more than 20. Here actor is the input parameter.
@Cacheable(value="movies", key="#actor.name", condition="#actor.age > 20")
public List<movie> getMovies(Actor actor) ...

См. ttps: //www.codelooru.com/2017/03/spring-cache-part-3-conditional-cache.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...