Spring Boot EHcache cacheResolver

时间:2019-06-07 14:42:33

标签: spring-boot caching patch

用例:

我使用了@Cacheable产品存储库

在ProductRepository.java中

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

ProductController

  1. 获取API(产品ID)
  2. 修补程序API(更新所需数据)

产品服务 GET方法

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

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

我的问题是在更新我的单个产品详细信息(使用@Patch)之后,如何仅在调用单个产品

的Get API时更新单个记录的缓存

1 个答案:

答案 0 :(得分:0)

您可以在存储库中声明save方法:

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

然后在PATCH上调用该方法。