美文网首页
基于MongoDb中心点范围查询

基于MongoDb中心点范围查询

作者: s_j_x | 来源:发表于2018-08-17 13:15 被阅读0次

    最近基于MongoDb对LBS查询的支持实现了一个类似共享单车搜索附近的车辆的功能,在类似小程序上截了张图

    mongDb 上存储的数据格式如下

    实现MongDb 语句

    maxDistance : 半径

    java 代码实现如下

    Document document =new Document();

    String lat = (String) parMap.get("lat");

    String lng = (String) parMap.get("lng");

    Document locDocument =new Document();

    Document nearDocument =new Document();

    Document geometryDocument =new Document();

    geometryDocument.put("type", "Point");

    List array =new ArrayList<>(2);

    array.add((Double.parseDouble(lng)));

    array.add(Double.parseDouble(lat));

    geometryDocument.put("coordinates", array);

    nearDocument.put("$geometry", geometryDocument);

    //十公里范围内

    nearDocument.put("$maxDistance", 10000);

    locDocument.put("$near", nearDocument);

    document.put("loc", locDocument);

    //自己封装的放方法可以忽略

    List result =mongoService.findlistDocument(document, fieldDocument, MyConstant.MONGO_TERMINALS_COLNAME, 0, 50, null);

    若有问题欢迎咨询 @@

    相关文章

      网友评论

          本文标题:基于MongoDb中心点范围查询

          本文链接:https://www.haomeiwen.com/subject/eeywbftx.html