我有如下所示的 Yaml 文件
Network:
Input 1:
- profile : "1"
- size: 2
Input 2:
- profile : "1"
- size: 3
Input 1:
- profile :"2"
- size:100
Input 2:
- name :"N"
- source: "test"
并使用以下依赖项将其转换为类对象
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.dataformat.yaml.YAMLFactory;
ObjectMapper mapper = new ObjectMapper(new YAMLFactory());
Tiles tiles = mapper.readValue(new File(args[0]), Tiles.class);
我的 Tiles 类如下所示
public class Tiles {
@JsonProperty
private Network network;
public Network getNetwork() {
return network;
}
public void setNetwork(Network network) {
this.network = network;
}
}
public class Network {
public Network() {
super();
}
@JsonProperty
private List<String> input;
public List<String> getInput() {
return input;
}
public void setInput(List<String> input) {
this.input= input;
}
但是当使用 ObjectMapper
解析 YAML 文件时我遇到一个异常(exception),例如com.fasterxml.jackson.databind.JsonMappingException:
我想按顺序处理 YAML 文件,即使输入被不同的名称替换,我的意思是 我必须先获取输入 1,然后获取输入 2,依此类推
感谢任何帮助。
提前致谢
最佳答案
将@JsonProperty
与来自共振的数据一起使用,即@JsonProperty("Network")。
@JsonProperty("Network")
private List<RoadNetwork> roadnetwork;
//getter and setter
关于java - 将 Yaml 文件转换为 java 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49383037/