.Net MVC4 및 RoboSpice 및 FasterXML Jackson 프레임 워크를 사용하여 Java 클라이언트와 웹 서비스간에 작업하는 다른 사람들에게도이를 공유하고 있습니다. POST 결과 객체에 대한 적절한 객체 매핑을 위해 JSON POJO 클래스를 설정하는 방법에 관한 좋은 정보를 stackoverflow에서 찾을 수 없습니다.FasterXML Jackson ObjectMapper for .Net MVC4 JSON POST 결과 유형 객체
: POST 작업의 결과 JSON은 닷넷 웹 서비스의 구조로 돌아옵니다 { "클래스 이름": { "attribute_one"1 ","attribute_two ": 1,"....}}
FastXml Jackson ObjectMapper readValue 구문 분석을 작동시키는 방법을 알아낼 수 없습니다. JsonIgnoreProperties를 해제 한 경우 모든 속성을 null 또는 기본값으로 설정하여 구문 분석 한 후 빈 결과 개체가 있거나 클래스 이름의 속성 이름이 유효하지 않습니다.
다음 POJO 객체 정의가 결국 나를 위해 일했습니다.
공용 클래스 ClassNameOuter {밖에 전문가
@JsonProperty("ClassName")
public ClassName _ClassName;
public ClassName get_ClassName() {
return _ClassName;
}
public void set_ClassName(ClassName _ClassName) {
this._ClassName = _ClassName;
}
@JsonIgnoreProperties(ignoreUnknown=true)
public static class ClassName {
@JsonProperty("attribute_one")
public long attribute_one;
@JsonProperty("attribute_two")
public long attribute_two;
: 그것은 자바 클래스 개체에 단일 결과 개체를 매핑하기위한 다음 내부 정적 클래스를 결과에서 클래스 이름과 일치 및 외부 클래스가 잭슨과 Robospice .... 더 나은 방법이 있다면 공유하십시오.
잘 모르겠 으면 ... 스프링 향미료 요청으로 RoboSpice를 사용했습니다 ...이 코드는 Jackson 파서를 사용하고 있습니까? 다음과 같은 코드를 사용하십시오 : import com.octo.android.robospice.request.springandroid.SpringAndroidSpiceRequest; .... return getRestTemplate(). postForObject (theURL, mObjectToPost.get_InnerObject(), OuterObject.class); – lepert
물론 RS 클래스를 알고 있습니다. 하지만 잭슨 XML 파서를 사용할 수있는 링크를 줄 수 있습니까? – Snicolas
Jackson 파서 사용법은 RoboSpice 설정의 일부입니다 ... 우리는 SpiceManager 구축시 Jackson2SpringAndroidSpiceService.class에 맞게 구성되었습니다. POJO 객체에서 우리는 com.fasterxml.jackson.annotation. * 클래스를 사용하여 주석을 사용합니다. 우리는 현재 Jackson-core-2.2.3 레벨에 있습니다 ... 그 더 빠른 Jackson 2.2.3 항아리 세트. Jackson-annotations, Jackson-core 및 Jackson-databind가 있습니다. 우리는 Jackson을 직접 사용하지 않습니다 ... SpiceManager의 구성에 따라 RoboSpice에서 사용합니다. 이것이 당신에게 도움이되는지 확실하지 않은가요? – lepert