我正在寻找两件事:
如何在开发过程中使用 Spring boot “dev” profile 禁用所有缓存。在 application.properties 中没有通用设置将其全部关闭。最简单的方法是什么?
如何禁用特定方法的缓存?我尝试像这样使用 SpEl:
@Cacheable(value = "complex-calc", condition="#${spring.profiles.active} != 'dev'}") public String someBigCalculation(String input){ ... }
但我可以让它工作。关于 SO 有几个与此相关的问题,但它们指的是 XML 配置或其他东西,但我使用的是 Spring Boot 1.3.3,它使用自动配置。
我不想让事情过于复杂。
最佳答案
默认情况下会自动检测和配置缓存类型。但是,您可以通过将 spring.cache.type
添加到配置中来指定要使用的缓存类型。要禁用它,请将值设置为 NONE
。
因为您想为特定配置文件添加它到该配置文件 application.properties
在这种情况下修改 application-dev.properties
并添加
spring.cache.type=NONE
这将禁用缓存。
关于java - Spring Boot - 如何在开发过程中禁用@Cacheable?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35917159/