【问题标题】:Spring boot reading configuration yaml hashmap based基于spring boot读取配置yaml hashmap
【发布时间】:2020-05-31 18:54:56
【问题描述】:

是否可以在 Spring Boot 中使用 @configurationproperties 读取 yaml 文件?

app:
  X1:
    key1: value1
    key2: value2

  X2:
    key1: value3
    key2: value4 
  X3:
    key1: value5
    key2: value6
  X4:
    key1: value7
    key2: value8

我想阅读并把它写成Hashmap

【问题讨论】:

    标签: spring-boot-configuration


    【解决方案1】:

    其中一种方法是使用 EnvironmentPostProcessor。您必须在后处理器中手动将它们放入 Hahsmap 中。将属性值读取为“key:value”,然后使用String split将它们设置在HashMap中。

    public class CreatehashMapPostProcessor implements EnvironmentPostProcessor {
    
      private static final String PROPERTY_SOURCE_NAME = "app.properties";
    
      @Override
      public void postProcessEnvironment(ConfigurableEnvironment env, SpringApplication application) {
        Map<String, Object> map = new HashMap<String, String>();
        String []val = env.getProperty("...");
       map.put(val[0], val[1]);
      }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-10-15
      • 2017-05-18
      • 2016-09-08
      • 2015-05-31
      • 1970-01-01
      • 2019-10-19
      • 2021-02-15
      相关资源
      最近更新 更多