我希望通过地理空间索引从MongoDB集合中获取文档列表。我已将该集合建立2dsphere索引。
db.getCollection("Info").ensureIndex(new BasicDBObject("location", "2dsphere"), "geospatial");
一个Info文档看起来像这样。
{ "_id" : ObjectId("52631572fe38203a7388ebb5"), "location" : { "type" : "Point", "coordinates" : [ 144.6682361, -37.8978304 ] }
当我使用坐标[144.6682361,-37.8978304]查询信息集合时,返回的集合数量为零。
我正在使用JAVA API执行此操作。我的JAVA代码如下:
DBCollection coll1=db.getCollection("Info");
BasicDBObject locQuery = new BasicDBObject();
locQuery.put("near", loc);
locQuery.append("maxDistance", 3000);
locCursor =coll1.find(locQuery);
System.out.println("LOCCURSOR"+locCursor.size());
locCursor.size()总是返回0。不确定我错在哪里。同时,我没有收到任何错误提示。只是给我返回了0个文档。有Mongo用户有什么想法吗?感谢您的时间和帮助。