Writing Java object instance to YAML using Jackson

Ganesh Rao B picture Ganesh Rao B · Sep 27, 2017 · Viewed 15.1k times · Source

I have a 'Example' Pojo class as mentioned below. Can any one tel to save instance of Example class to YAML file using Jackson.

public class Example {

String name;
int value;

public String getName() {
    return name;
}

public void setName(String name) {
    this.name = name;
}

public int getValue() {
    return value;
}

public void setValue(int value) {
    this.value = value;
}

}

Answer

cassiomolin picture cassiomolin · Sep 27, 2017

Jackson has a module that supports YAML. Ensure that you add the required dependency to your project, then you can use it as following:

// Create an ObjectMapper mapper for YAML
ObjectMapper mapper = new ObjectMapper(new YAMLFactory());

// Write object as YAML file
mapper.writeValue(new File("/path/to/yaml/file"), example);

Alternatively you can write your object as a string:

// Write object as YAML string
String yaml = mapper.writeValueAsString(example);