Comment écrire ceci mongodb requête shell avec l'utilisation de Java?requête shell mongodb avec Java
requête:db.building_feature.find({geometry : {$geoIntersects :{$geometry :{type : "Polygon", coordinates :[[[37.59777,55.73216],[37.59805,55.77615],[37.68710,55.77643],[37.68517,55.73290],[37.59777,55.73216]]]}}}})
Ma collection GeoSpatialIndex est "2dsphere".
Ma version qui ne fonctionne pas:
DBCollection testCollection = db.getCollection("building_feature");
final LinkedList<double[]> geo = new LinkedList<>();
geo.addLast(new double[]{37.59777, 55.73216});
geo.addLast(new double[]{37.59805, 55.77615});
geo.addLast(new double[]{37.68710, 55.77643});
geo.addLast(new double[]{37.68517, 55.73290});
final BasicDBObject query
= new BasicDBObject("geometry", new BasicDBObject("$within", new BasicDBObject("$geometry", geo)));
System.out.println("Result Count : " + testCollection.find(query).count());
Merci.
Merci, pouvez-vous donner l'exemple « GeoJSONPolygonBasicDBObject »? –
Voir mon nouveau code, j'ai ajouté 'polygon'. – dgiugg
Eh bien, c'est Java basique, et je pense que c'est hors du but de la question, qui concerne MongoDB API pour Java. Vous ne voulez pas que j'écrive tout votre code, je suis sûr que Google vous dira comment créer des tableaux en Java;) – dgiugg