注釈com.fasterxml.jackson.annotation.JsonProperty
を試してください。以下に簡単な例を示します。
サンプルYAMLファイル:
---
"42": "some value"
データ転送オブジェクトクラス:
public class Entity {
@JsonProperty("42")
private String value;
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
}
パーサー:
public class Parser {
public static void main(String[] args) throws IOException {
ObjectMapper mapper = new ObjectMapper(new YAMLFactory());
Entity entity = mapper.readValue(new File("src/main/resources/sample.yml"), Entity.class);
System.out.println(entity.getValue());
}
}
コンソール出力は次のようになりますsome value
。
P.S.私は以下の依存関係を持ってテストしました:
<dependency>
<groupId>com.fasterxml.jackson.dataformat</groupId>
<artifactId>jackson-dataformat-yaml</artifactId>
<version>2.3.0</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.2.3</version>
</dependency>
出典
2017-11-29 19:51:15
CDV
例を探しましたか?最初のGoogleの結果 - https://dzone.com/articles/read-yaml-in-java-with-jackson –
@DanWはい、私は参照としてまったく同じページを使用しました。しかし、数値があるときにそれを動作させる方法がわかりません。例えば: '7.0' –
@ Damien-Amen:文字列として扱います。彼らは数字のように見えることを無視してください。彼らは実際には文字列です – Henrik