J'essaie de créer un document, puis de le placer dans une base de données mongo. Lors de la création du document, l'un des champs est de type double[]
. J'utilise la ligne suivante de code pour ajouter ce champ au document:mettre un double [] dans un champ d'un document
Document loc = new Document();
loc.put("position", new Document("type", "Point").append("cords", new double[]{32.05, 35.15}));
Quand je tente d'imprimer le contenu du champ position
i obtenir la sortie suivante: position = Document{{type=Point, cords=[[email protected]}}
J'utilise le Le code suivant pour l'imprimer:
private void printout(Document d){
Set<Entry<String, Object>> ks = d.entrySet();
for (Entry e : ks){
System.out.println(e.getKey() + " = " + e.getValue());
}
System.out.println("");
}
La question est pourquoi est-ce que je ne vois pas les nombres réels quand j'imprime les clés et les valeurs de document? Une autre question est, vais-je être en mesure d'utiliser l'opérateur $near
pour localiser le document a une position plus proche d'une autre position si je stocke le document de cette façon?
Toute aide serait appréciée, merci.
Nous vous remercions de votre aide. –
Comment serai-je en mesure d'atteindre le contenu de ce tableau si nécessaire? J'ai essayé d'utiliser 'loc.get (" position "). Get (" cordons ") [0]' mais cela n'a pas fonctionné. –
J'ai essayé de placer le document dans la base de données mongo et j'ai eu l'erreur suivante: 'org.bson.codecs.configuration.CodecConfigurationException: Impossible de trouver un codec pour la classe [D.'. Ce problème concerne le champ tableau. Pourquoi cela se passe-t-il? –