【问题标题】:How to get map of settings from application.yml?如何从 application.yml 获取设置图?
【发布时间】:2021-04-11 14:48:50
【问题描述】:

这是我的 application.yml 配置:

spring:
  cache:
    cache-names: all_config_bundle, all_config_dependence, config_plan
    caffeine.spec: maximumSize=100, expireAfterAccess=0s
    caches:
      all_config_bundle: maximumSize=100, expireAfterAccess=0s
      all_config_dependence: maximumSize=100, expireAfterAccess=0s
      config_plan: maximumSize=100, expireAfterAccess=0s

我需要将它们分组,这就是我添加另一部分设置的原因。这是我的配置类:

@Configuration
@EnableConfigurationProperties(CacheProperties.class)
@Setter
public class CacheConfig {

    private Map<String, String> caches;
}

CacheProperties 已经有一个"spring.cache" 前缀,所以我只添加了我的组的名称。 我的地图中仍然出现“null”。我的错误是什么?

【问题讨论】:

  • 您是否尝试过在此类中添加spring.cache 作为前缀?
  • @Deadpool 是的,没有帮助

标签: java spring-boot caffeine-cache


【解决方案1】:

@ConfigurationPropertiesprefix 对我有用

@ConfigurationProperties(prefix = "spring.cache")
@Data
@Configuration
public class CacheConfig {

     private Map<String, String> caches;
}

输出:

{all_config_bundle=maximumSize=100, expireAfterAccess=0s, all_config_dependence=maximumSize=100, expireAfterAccess=0s, config_plan=maximumSize=100, expireAfterAccess=0s}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-03-18
    • 2019-05-19
    • 1970-01-01
    • 1970-01-01
    • 2016-12-08
    • 2020-03-31
    • 1970-01-01
    • 2017-10-23
    相关资源
    最近更新 更多