如何从 application.yml 获取设置映射?
How to get map of settings from application.yml?
这是我的 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
我需要对它们进行分组,这就是我添加另一部分设置的原因。这是我的配置 class:
@Configuration
@EnableConfigurationProperties(CacheProperties.class)
@Setter
public class CacheConfig {
private Map<String, String> caches;
}
CacheProperties
已经有一个 "spring.cache"
前缀,所以我只添加了我的组名。
我的地图中仍然显示“null”。我的错误是什么?
@ConfigurationProperties 和 prefix
对我有用
@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}
这是我的 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
我需要对它们进行分组,这就是我添加另一部分设置的原因。这是我的配置 class:
@Configuration
@EnableConfigurationProperties(CacheProperties.class)
@Setter
public class CacheConfig {
private Map<String, String> caches;
}
CacheProperties
已经有一个 "spring.cache"
前缀,所以我只添加了我的组名。
我的地图中仍然显示“null”。我的错误是什么?
@ConfigurationProperties 和 prefix
对我有用
@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}