首页 > 解决方案 > 如何编写spring @ConfigurationProperties 类来读取二级地图?

问题描述

在 yaml 我有这样的属性:

threadPools:
  poollA:
    size: 10
    maxSize: 20
 poolB:
    size: 20

如何编写 @ConfigurationProperties 类来将此配置映射到池配置映射?

如果还有一个级别,那就很容易了:

threadPools:
  configs:
    poollA:
      size: 10
      maxSize: 20
    poolB:
      size: 20

和 java(kotlin, 实际上) 类:

@ConfigurationProperties("threadPools")
internal class ThreadPoolsProperties {

    val configs: Map<String, ThreadPoolConfig> = mutableMapOf()

    internal class ThreadPoolConfig {
        var size: Int = 10
        var maxSize: Int = 10
    }
}  

但是第一个例子呢?

标签: springspring-bootyaml

解决方案


推荐阅读