gson.fromJson Rückgabe von null-Werten
Dies ist Mein JSON-String : "{'userName' : 'Bachooo'}"
Konvertieren von JSON-String zu LoginVO Logik ist:
Gson gson = new GsonBuilder().excludeFieldsWithoutExposeAnnotation().create();
LoginVO loginFrom = gson.fromJson(jsonInString, LoginVO.class);
System.out.println("userName " + loginFrom.getUserName()); //output null
Meine LoginVO.class ist:
public class LoginVO {
private String userName;
private String password;
public String getUserName()
{
return userName;
}
public void setUserName(String userName)
{
this.userName = userName;
}
public String getPassword()
{
return password;
}
public void setPassword(String password)
{
this.password = password;
}
}
Hinweis: ich bin mit jdk 1.8.0_92
Ausgabe der loginForm.getUserName () NULL
statt "Bachooo"
eine Idee zu diesem Problem?
Und was passiert, wenn Sie nur
wenn ich nur Gson gson = new Gson() Unendlich-Schleife auf rekursive aufrufen von com.google.gson.intern.$Gson$Arten.resolve($Gson$Arten.java:375)
was
Mögliche Duplikate von Wie soll ich entkommen strings in JSON?
^ d.h. einzelne Angebote sind nicht gültig JSON.
Gson gson = new Gson()
?wenn ich nur Gson gson = new Gson() Unendlich-Schleife auf rekursive aufrufen von com.google.gson.intern.$Gson$Arten.resolve($Gson$Arten.java:375)
was
excludeFieldsWithoutExposeAnnotation
sagt? "nur dann aussetzen, Felder, versehen sind und der rest wird ignoriert "Mögliche Duplikate von Wie soll ich entkommen strings in JSON?
^ d.h. einzelne Angebote sind nicht gültig JSON.
InformationsquelleAutor PAncho | 2016-05-26
Du musst angemeldet sein, um einen Kommentar abzugeben.
Da Sie
excludeFieldsWithoutExposeAnnotation()
Konfiguration auf dieGsonBuilder
Sie müssen@Expose
annotation auf jene Felder, die Sie wollen, zu serialisieren/Deserialisieren.So in Ordnung für
excludeFieldsWithoutExposeAnnotation()
zu serialisieren/Deserialisieren Ihre Felder, die Sie hinzufügen müssen, dass Anmerkungen:Oder Sie entfernen konnte
excludeFieldsWithoutExposeAnnotation()
von derGsinBuilder
.Oder die andere Möglichkeit ist, einfach zu sagen: neue GsonBuilder().create (), wenn Sie dont haben Zugriff zum Bearbeiten der Klasse
InformationsquelleAutor Vikas Madhusudana
Versuchen Sie es bitte. verwenden Sie Gson-Glas, um es auszuführen.
InformationsquelleAutor Kumaresan Perumal