Jackson을 사용하여 원래 만든 일부 JSON을 deserialize하기 위해 Jackson을 사용하려고합니다. 목록 개인 회원이 아니라 즉석에서 생성 된 곳Jackson JSON deserialization - synthetic list getter
public List<Team> getTeams() {
// create the teams list
}
:이 모델은 합성 목록 게터 있습니다. 이제는 serialize가 잘되지만, deserialization에서는 getTeams를 사용합니다. 아마도 Jackson은 변경 가능한 목록을 가진 getter를보고 setter로 사용할 수 있다고 생각하기 때문입니다. getTeams의 내부는 Jackson이 아직 채워지지 않은 다른 필드에 의존합니다. 그 결과 NPE입니다. 즉 주문은 여기 문제 중 하나이지만 해결하고 싶지는 않습니다.
그럼 getTeams에 주석을 달아서 설정 도구로 사용하지 말고 은 게터로 사용되는입니다. 이것이 가능한가? 어떤 제안?
맞음 : @JsonSetter가 @JsonSetter 대신 작동한다는 점에 유의하십시오. @JsonSetter는 서명으로 인해 게터가 될 수 없으므로 작동합니다. – StaxMan
팁 주셔서 감사합니다. 나는 그 구성 설정을 놓쳤으며,이 인스턴스에서 이것을 사용하게되어 기쁩니다. 또한 @JsonSetter 또는 @JsonProperty를 사용하여 setter 경로 변경에 대해 알아두면 좋습니다. – David