将列表映射注入配置
Injecting a map of lists into configuration
我正在尝试将列表的动态映射注入到我的 Quarkus 应用程序中,但不确定这是否可行。我还没有看到 Quarkus 关于此事的任何文档,所以我想知道 smallrye-config
是否支持它。
app:
example:
- key: KeyExample
values:
- test 1
- test 2
- test 3
- key: KeyExample2
values:
- test 1
- test 2
- test 3
我试图避免以下语法,然后对配置执行 post 处理以达到预期效果:
app:
example:
- KeyExample;test 1
- KeyExample;test 2
- KeyExample;test 3
- KeyExample2;test 1
- KeyExample2;test 2
- KeyExample2;test 3
遗憾的是,SmallRye Config 不直接支持Map<V, List<?>
(可以添加)。
如果稍微更改一下 YAML,也可以达到相同的结果:
app:
example:
KeyExample:
values:
- test 1
- test 2
- test 3
KeyExample2:
values:
- test 1
- test 2
- test 3
然后您可以像这样为其提供映射:
@ConfigMapping(prefix = "app")
interface MapListConfig {
Map<String, Lists> example();
interface Lists {
List<String> values();
}
}
随时打开 https://github.com/smallrye/smallrye-config/ 中的增强功能以添加 Map<V, List<?>
支持。
我正在尝试将列表的动态映射注入到我的 Quarkus 应用程序中,但不确定这是否可行。我还没有看到 Quarkus 关于此事的任何文档,所以我想知道 smallrye-config
是否支持它。
app:
example:
- key: KeyExample
values:
- test 1
- test 2
- test 3
- key: KeyExample2
values:
- test 1
- test 2
- test 3
我试图避免以下语法,然后对配置执行 post 处理以达到预期效果:
app:
example:
- KeyExample;test 1
- KeyExample;test 2
- KeyExample;test 3
- KeyExample2;test 1
- KeyExample2;test 2
- KeyExample2;test 3
遗憾的是,SmallRye Config 不直接支持Map<V, List<?>
(可以添加)。
如果稍微更改一下 YAML,也可以达到相同的结果:
app:
example:
KeyExample:
values:
- test 1
- test 2
- test 3
KeyExample2:
values:
- test 1
- test 2
- test 3
然后您可以像这样为其提供映射:
@ConfigMapping(prefix = "app")
interface MapListConfig {
Map<String, Lists> example();
interface Lists {
List<String> values();
}
}
随时打开 https://github.com/smallrye/smallrye-config/ 中的增强功能以添加 Map<V, List<?>
支持。