Spring Boot EHcache cacheResolver - PullRequest
       13

Spring Boot EHcache cacheResolver

0 голосов
/ 07 июня 2019

Вариант использования:

Я использовал @Cacheable репозиторий продуктов

В ProductRepository.java

@Cacheable(value = "ProductId")
    public ProductEntity findByProductId(long productId);

ProductController

  1. Получить API (идентификатор продукта)
  2. Patch API (обновить необходимые данные)

Сервис продуктов для метода GET

@CacheEvict(cacheNames = { "ProductId" }, allEntries = true)

public ProductView getProductByProductId(long productId)
{
productEntity = productRepository.findByProductId(productId);
}

У меня вопрос после обновления сведений об одном продукте (с использованием @Patch), как обновить кэш только для одной записи при вызове Get API для одного продукта

1 Ответ

0 голосов
/ 07 июня 2019

Вы можете объявить метод save в своем хранилище:

@Override
@CacheEvict(value = "ProductId")
ProductEntity save(ProductEntity product);

и вызвать этот метод в PATCH.

...