J'essaie de générer une structure de données à l'intérieur du code JavaScript et de traiter les résultats de Java (Rhino en Java 6 ou 7).
J'ai réussi à appeler la fonction JS de Java en utilisant: P>
{ "key1" : { "key1_1" : "value1_1", "key1_2" : 11 }, "key2" : [ { "key2_1": "foo2" , "key2_1" : "bar2" }, { "key2_1": "foo2" , "key2_1" : "bar2" , "key2_3" : [1,2,3] } ] }
3 Réponses :
Vous pouvez analyser n'importe quelle chaîne JSON "objet" à l'aide de gson code> en l'analysant dans un
LinkedTremap code>, comme ceci:
[1.0, 2.0, 3.0]
Vous pouvez construire un objet Java de l'intérieur de Json.
Quelque chose comme ça (je construisai de nouvelles java.lang.string, mais vous pouvez également construire votre propre classe): P>
java -jar js.jar Rhino 1.7 release 5 2015 01 29 js> str=new java.lang.String("Hello world") Hello world js> java.lang.System.out.println(str) Hello world
Il a demandé quelque chose spécifiquement!
Ceci est le code de NativeObject à JSONOBJECT.
Je pense que de NativeObject à Carte est similaire.
Y a-t-il un problème de la laisser dans le format de rhinocéros et d'y accéder via cette structure de données? Je reconnais que cela aurait des frais généraux mais je ne pense pas qu'il y ait des alternatives sans convertir à la chaîne et à la désérialisation.
@ Ghostbust555 - Je pense que "l'accès au format de rhinocéros" est une approche valide, mais pas sûre de la façon de faire cela. Il ne semble pas y avoir de documentation décente que je peux trouver, en particulier pour les hachages
hein. Wow, ils ont juste la pire documentation de tous les temps. Essayez le résultat.getattributes ("Key1")?
Pourquoi n'utilisez-vous pas ObjectMapper ??
Quel est spécifiquement le problème avec l'utilisation de GSON?
@Blackpop - Si vous voulez dire celui de Jackson, est-ce différent de l'utilisation de GSON? Il semble convertir JSON String, pas un NativeObject
@Bohemian - Problème n ° 1: J'ai déjà un NativeObject. Je ne pense pas que Gson fonctionne avec ça? Problème n ° 2: Je suis inquiet pour la performance (l'ajout d'une balançoire sur papier pour un fichier JSON GRAND-ISH est une préoccupation). Accordé, je n'ai pas de référence. Cela dit, j'accepterais une réponse qui s'appuie sur une analyse, mais prouve suffisamment ce n'est pas plus lent de manière significative sur les fichiers JSON plus importants (disons des tableaux de taille 1000)
@DVK Vous pouvez former un objet de JSON String. Final NativeObject PropertyObj = mapper.readvalue (Jsonstring, NativeObject .Class);