La conversion de Java Objet JSON?
Je suis à l'aide de struts2 d'Action et de jquery pour l'INTERFACE utilisateur ...
Je veux savoir comment faire pour convertir un objet Map pour objet JSON et l'envoyer à l'INTERFACE utilisateur ,
Maintenant je suis capable d'imprimer dans la page JSP java normal Map l'objet :
{71=Heart XXX, 76=No Heart YYY}
Mais je veux qu'il soit comme ceci :
{71:Heart XXX, 76:No Heart YYY}
Comment vais-je parvenir .... ?
Vous devez vous connecter pour publier un commentaire.
Essayer Gson:
Je ne recommande pas de mettre ce genre de code dans une page JSP, cependant. Des choses comme celles-ci devraient vivre dans un contrôleur comme une Servlet ou une Action de classe.
Vous aussi vous certainement ne voulez pas la sortie:
mais plutôt bon JSON comme (cité des noms, cité de la chaîne de valeurs):
Gson sera de sortie de ce dernier.
Personnellement, j'utilise
struts2-json
plugin pour cela. Il est très facile à utiliser et vous pouvez facilement convertir de la Carte en Json et vice versa par certains struts.xml les entrées.Créer une carte et de sa lecture/définition.
Définir un résultat global en tant que
dans votre
struts.xml
avec l'ajout de l'intercepteur dans votre pile de la session.Plus d'informations peuvent être trouvées ici
À ajouter à Ashish réponse, c'est après l'ajout de la struts2-json-plugin.
J'aime utiliser les struts2-conventions-plugin si possible en tant que tel, j'ai très peu dans ma struts.xml et préfèrent utiliser la plupart des annotations à la place.
Pour faire de votre action de retour json lors de l'utilisation de conventions il y a deux étapes: 1) demandez à votre action utiliser le json-package par défaut, 2) Définir l'action comme ayant un json type de résultat.
JSON Annotations Exemple
Parfois des valeurs plus complexe que les primitives et vous aurez envie de tailler le json retourné, ou parfois, vous voulez mettre plusieurs actions en une seule classe (parfois, vous obtenez en retour une structure complexe et à l'élagage des façons dont vous pouvez faire votre travail sur le client plus facile). Pour ce faire, nous utilisons inclure ou d'exclure des paramètres.
Exemple exclure de la langue
Modifier le résultat ci-dessus annotation être:
Une autre façon d'y parvenir est d'énoncer explicitement les propriétés que nous voulons:
Exemple à l'Aide de cartes sauvages avec exclure paramètre
Code Action n'est pas fourni, bonne pour la coupe d'objets compliqués
Vous pouvez le voir avec le plugin, il est très difficile de faire plus simple que le xml ou annotation méthode.
Il y a un tas de JSON bibliothèques Java sur http://www.json.org/.
Je voudrais vérifier un de ces.