2016-04-03 5 views
7

Ich benutze Jackson und Zucker orm und ich habe ein paar Fehler beim Parsen. Das ID-Feld befindet sich im JSON konstant 0. Was kann ich tun, um es zu beheben?Jackson + SugarOrm ID Fehler

Dieses Beispiel meine Klasse:

@JsonIgnoreProperties(ignoreUnknown = true) 
public class JsonScienceEvent extends SugarRecord<JsonScienceEvent>{ 

    @JsonProperty("id") 
    private String eventId; 

public JsonScienceEvent() 

public JsonScienceEvent(String eventId){ 
    this.eventId = eventId; 
} 

public String getEventId(){ 
    return eventId; 
} 
+0

Buchen Sie den Fehler-Stack – vilpe89

+0

auch den JSON, den Sie versuchen zu analysieren –

Antwort

0

das Feld id wird aus der Superklasse geerbten SugarRecord<T> zusammen mit dem Setter und Getter-Methoden setId(Long id) und getId(). Sie können override die id Feld von der Sugar-Bibliothek generiert, aber soweit ich mich erinnern kann verwendet Long Typ, wenn Sie von String-Kennung zu Long alle sollten in Ordnung sein und auf diese Weise können Sie die Bibliothek zwingen, die zu verwenden id Sie setzen mit dem Setter setId(Long id),

0

Zucker ORM tatsächlich sein eigenes ID-Feld zu halten schafft. Wenn Sie beim Erstellen eines Datensatzes keinen Wert in das Feld eventId einfügen, ist Ihre Spalte leer.

Verwenden Sie "getId()", um die automatisch inkrementierte ID aus dem Datensatz abzurufen. Vergessen Sie nicht, zu einer Zeichenfolge zu wechseln, wenn Sie das möchten!