주석 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. 다음 종속성을 테스트했습니다 :
<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