sql >> Databasteknik >  >> NoSQL >> MongoDB

Beräkna avstånd i Java med MongoDB

Du kan utföra kommandot med "kommando"-metoden för DB-objektet i Java-drivrutinen. API-dokumentationen finns här:http://api.mongodb.org/java/current/com/mongodb/DB.html#command%28com.mongodb.DBObject%29

Så här kan kommandot utföras med Java-drivrutinen:

BasicDBObject myCmd = new BasicDBObject();
myCmd.append("geoNear", "data");
double[] loc = {-73.9000, 40.7000};
myCmd.append("near", loc);
myCmd.append("spherical", true);
myCmd.append("maxDistance", (double)2500/6378137);
myCmd.append("distanceMultiplier", 6378137);
System.out.println(myCmd);
CommandResult myResult = db.command(myCmd);
System.out.println(myResult.toString());

Jag lade till några System.out.println-satser, så att du kan se hur kommandodokumentet ser ut, och en strängrepresentation av resultaten som returneras.
Du kan lägga till num :1 i kommandodokumentet för att begränsa resultaten till 1.

myCmd.append("num", 1);

Detta noteras i geoNear-dokumentationen:http://www.mongodb .org/display/DOCS/Geospatial+Indexing#GeospatialIndexing-geoNearCommand

Förhoppningsvis kommer detta att få dig igång. Lycka till!



  1. Morphia List<Map<String,Object>>> return Inbäddat element är inte ett DBO-objekt vid sökoperation

  2. NodeJS-servern hänger på Find Query från MongoDB vid samtidiga förfrågningar

  3. Meteor / MongoDB:infoga heltal istället för sträng på formulärsändning

  4. Hur importerar man data från mongodb till pandor?