MongoDB實現搜附近功能

2021-10-10 23:01:19 字數 2320 閱讀 7736

建立對應於資料庫中的對應的實體類

@document

(collection =

"user_location"

)@compoundindex

(name =

"location_index"

, def ="")

public

class

userlocation

implements

serializable

編寫實現類

@service

(version =

"1.0"

)public

class

userlocationapiimpl

implements

userlocationapi

else

return ul.

getid()

.tohexstring()

;}@override

public userlocationvo querybyuserid

(long userid)

@override

public list

queryuserfromlocation

(double longitude, double latitude, integer range)

}

userlocationvo類的編寫(由於userlocation不能序列化,所以要再定義userlocationvo進行返回資料)

public

class

userlocationvo

implements

serializable

public

static

final list

formattolist

(list

userlocations)

return list;

}

控制層

;}業務層

public list

querynearuser

(string gender, string distance)

list

userids =

newarraylist

<

>()

;for

(userlocationvo locationvo : userlocationlist)

new<

>()

;in("user_id"

, userids);if

(stringutils.

equalsignorecase

(gender,

"man"))

else

if(stringutils.

equalsignorecase

(gender,

"woman"))

list

userinfolist =

this

selectlist

; list

nearuservolist =

newarraylist

<

>()

;for

(userlocationvo locationvo : userlocationlist)

for(userinfo userinfo : userinfolist)}}

return nearuservolist;

}

nodejs mongo 實現搜附近的人

參考 用mongo作為儲存,來實現搜尋附近的人具有先天的優勢,mongodb原生支援地理位置索引,可以直接用於位置距離計算和查詢。另外,它也是如今最流行的nosql資料庫之一,除了能夠很好地支援地理位置計算之外,還擁有諸如面向集合儲存 模式自由 高效能 支援複雜查詢 支援完全索引等等特性。先看一下我...

查詢附近的人 mongodb的實現

最近做乙個關於附近的人查詢,參考了很多資料 現在市面上主流的做法 1.用資料庫 2.用類存 3.用lucene 我選用的是用mongodb自帶的查附近的人的方法,如下 dbobject db new basicdbobject cityid json.parse dbobject near new ...

PHP 技巧 附近的人功能實現

授權獲取使用者的經緯度並存入資料庫 lng 字段 lat 字段 1.原生查詢 select convert 2 6378.137 asin sqrt pow sin 3.1415926535898 get lat lat 360 2 cos 3.1415926535898 get lat 180 c...