Cartographie JSON dans POJO à l'aide de Gson
J'ai le JSON suivants pour représenter la réponse du serveur pour un sel de demande:
{
"USER":
{
"E_MAIL":"email",
"SALT":"salt"
},
"CODE":"010"
}
Et j'ai essayé de la carte, avec suivant POJO:
public class SaltPOJO {
private String code = null;
private User user = null;
@Override
public String toString() {
return this.user.toString();
}
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
public class User {
private String e_mail = null;
private String salt = null;
@Override
public String toString() {
return this.e_mail + ": " + this.salt;
}
public String getE_mail() {
return e_mail;
}
public void setE_mail(String e_mail) {
this.e_mail = e_mail;
}
public String getSalt() {
return salt;
}
public void setSalt(String salt) {
this.salt = salt;
}
}
}
Maintenant chaque fois que je fais ceci:
Gson gson = new Gson();
SaltPOJO saltPojo = gson.fromJson(json.toString(), SaltPOJO.class);
Log.v("Bla", saltPojo.toString());
La saltPojo.toString()
est null. Comment puis-je carte mon JSON dans POJO à l'aide de Gson?
Est l'ordre de mes variables importantes pour la Gson de la cartographie?
L'ordre des champs n'a pas d'importance, mais les noms oui, vous devriez probablement prendre un coup d'oeil à guide de l'utilisateur
qu'est-ce que json?
JSONObject json et SaltPOJO est la classe je postet ci-dessus.
qu'est-ce que json?
json.toString(), SaltPOJO.class
ici .??JSONObject json et SaltPOJO est la classe je postet ci-dessus.
OriginalL'auteur Mulgard | 2014-11-20
Vous devez vous connecter pour publier un commentaire.
Non, ce n'est pas le cas.
C'est Sensible à la casse et les clés dans la chaîne JSON doit être la même que pour les noms de variables utilisés en classe POJO.
Vous pouvez utiliser @SerializedName annotation à utiliser tout nom de variable en tant que votre goût.
Exemple de code:
OriginalL'auteur Braj
Vous n'avez pas le mappage entre le getter et setter. Si vous modifiez votre json à quelque chose comme ci-dessous, il devrait fonctionner:
Si vous obtenez json formulaire de tiers puis, malheureusement, vous devrez modifier votre pojo ou vous pouvez utiliser un adaptateur.
Oui il l'est! Donc, aller sur et changer le pojo 🙁
OriginalL'auteur SMA