如何用 Jackson 处理 yaml 数据
本文介绍了如何用 Jackson 这个非常流行的 JSON 解析库,把 yaml 数据解析成 Java 对象。
又或者反过来把 Java 对象序列化成 yaml 数据。
1. 添加依赖
首先,我们要添加相关的依赖—— jackson-dataformat-yaml 和 jackson-datatype-jsr310
<dependency>
<groupId>com.fasterxml.jackson.dataformat</groupId>
<artifactId>jackson-dataformat-yaml</artifactId>
<version>2.13.0</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.datatype</groupId>
<artifactId>jackson-datatype-jsr310</artifactId>
<version>2.13.0</version>
</dependency>
2. 解析 yaml 数据成 Java 对象
ObjectMapper mapper = new ObjectMapper(new YAMLFactory());
mapper.findAndRegisterModules();
Data data = mapper.readValue(new File("/tmp/data.yaml"), Data.class);
3. 系列化 Java 对象成 yaml 数据
ObjectMapper mapper = new ObjectMapper(new YAMLFactory().disable(Feature.WRITE_DOC_START_MARKER));
mapper.writeValue(new File("/tmp/data.yaml"), order);