J'essaye d'analyser l'objet JSON dans Java. Je posterai objet JSON valeur de clé en utilisant la méthode dojo.xhrPost()
comme indiqué ci-dessous:Comment analyser l'objet JSON en Java:
dojo.xhrPost({
url: /esturl/,
handleAs : "text",
content : {INST1 : {"0001" : "aa"},
INST2 : {"0002" : "bb"},
INST3 : {"0003" : "cc"}},
load : load(data),
error : error
});
Maintenant, je suis en train de lire ces données post de contexte de demande:
Map<String, String[]> paramMap = requestContext.getParameterMap();
quand j'imprime cela en boucle:
Iterator it = paramMap.entrySet().iterator();
while(it.hasnext()){
Map.entry pairs = (Map.Entry) it.next();
System.out.println(pairs.getKey());
System.out.println(pairs.getkValue());
}
cela me retourne:
INST1
[Ljava.lang.String;@1b4cef
INST2
[Ljava.lang.String;@5801d
comme sage, mais je devrais obtenir des valeurs comme
INST1 : {"0001" : "aa"}, INST2 : {"0002" : "bb"}, INST3 : {"0003" : "cc"}},
toute indication serait très appréciée.
Mise à jour
Lorsque je tente d'obtenir la valeur d'un paramètre à l'aide
String[] X = requestContext.getParameters{"INST1"};
if (X != null){
System.out.println(X.length);
System.out.println(X[0]);
System.out.println(X[0].length);
}
puis je reçois:
1
[object Object]
[object Object]
Q Maintenant, comment puis-je obtenir des valeurs réelles de Objet comme INST1 : {"0001" : "aa"}
au lieu de [objet objet]?
[Ljava.lang.String; @ 1b4cef - Le 'L' signifie ici que c'est un tableau. SO peut être varialbe INST1 prend les valeurs comme un tableau de chaînes –
@Gaurav: Oui, c'est vrai, mais comment puis-je le lire? Je veux aller plus loin mais je ne suis pas capable de le lire à ce moment-là et je ne peux donc pas faire de traitement supplémentaire, aucune suggestion? – Rachel