How to define a map in a YAML file for simple POJO?

后端 未结 2 1075
不思量自难忘°
不思量自难忘° 2021-02-03 18:58

I am using snakeYaml to parse certain configuration/property values to a Configuration object.

My yaml file looks like this -

#Thread
batchLimit: 1000
th         


        
2条回答
  •  天命终不由人
    2021-02-03 19:34

    Yaml file "AppParams.yml" with key-value pairs:

    someConfig:
        key1: value1
        key2: value2
    

    POJO:

    public class ApplicationParameters {
        private Map someConfig;
    
        public ApplicationParameters() {
        }
    
        public Map getSomeConfig() {
            return someConfig;
        }
    
        public void setSomeConfig(Map someConfig) {
            this.someConfig = someConfig;
        }
    }
    

    Reader:

    ObjectMapper mapper = new ObjectMapper(new YAMLFactory());
    File paramFile = new File("AppParams.yml");
    ApplicationParameters applicationParameters = mapper.readValue(paramFile, ApplicationParameters.class);
    
    Map someConfig = applicationParameters.getSomeConfig();
    
    String key1Value = someConfig.get("key1");    //returns "value1"
    

    The example above uses these dependencies in POM.xml:

     
        
            com.fasterxml.jackson.core
            jackson-core
            2.9.8
        
        
            com.fasterxml.jackson.core
            jackson-databind
            2.9.8
        
        
            com.fasterxml.jackson.dataformat
            jackson-dataformat-yaml
            2.9.8
        
    
    

提交回复
热议问题