Spring Mongo说坐标超出范围
我有一个连接到mongo数据库的Spring应用程序,我使用以下代码从地球上某个点半径范围内的某个集合获取文档:Spring Mongo说坐标超出范围,spring,mongodb,Spring,Mongodb,我有一个连接到mongo数据库的Spring应用程序,我使用以下代码从地球上某个点半径范围内的某个集合获取文档: "query" : { "location" : { "$geoWithin" : { "$centerSphere" : [ [ 37.33240731, -122.03046898 ],
"query" : {
"location" : {
"$geoWithin" : {
"$centerSphere" : [
[
37.33240731,
-122.03046898
],
0.0018924144710663706
]
}
}
}
通常这是可行的(对于英格兰的位置),但是,由于某些原因,这些坐标(在美国)会产生以下误差:
'{ "ok" : 0.0, "errmsg" : "longitude/latitude is out of bounds, lng: 37.3323
lat: -122.031", "code" : 2 }
是什么导致了这种情况?在使用spring data mongodb时遇到了同样的问题,非常愚蠢的错误是lat和long值的交换
Query query = new BasicQuery(
"{ location: { $geoWithin: { $centerSphere: [ [
-122.031,
37.3323
"+ rangeInMiles / 3963.2 +
" ] } }, visible : true, status : 'ACTIVE' }"
);
你找到解决办法了吗?@toHo是的,只是经度和纬度的方向不对!这是正确的!我真的想出来了,但忘了发了。谢谢