日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

mongorepository查询条件_MongoRepository实现增删改查和复杂查询【支持的查询类型】...

發(fā)布時(shí)間:2023/12/4 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mongorepository查询条件_MongoRepository实现增删改查和复杂查询【支持的查询类型】... 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

與HibernateRepository類似,通過繼承MongoRepository接口,我們可以非常方便地實(shí)現(xiàn)對一個(gè)對象的增刪改查,要使用Repository的功能,先繼承MongoRepository接口,其中T為倉庫保存的bean類,TD為該bean的唯一標(biāo)識(shí)的類型,一般為ObjectId。之后在service中注入該接口就可以使用,無需實(shí)現(xiàn)里面的方法,spring會(huì)根據(jù)定義的規(guī)則自動(dòng)生成。

下面是支持的查詢類型,每三條數(shù)據(jù)分別對應(yīng):(方法后綴,方法例子,MongoDB原生查詢語句)

GreaterThan(大于)

findByAgeGreaterThan(int age)

{"age" : {"$gt" : age}}

LessThan(小于)

findByAgeLessThan(int age)

{"age" : {"$lt" : age}}

Between(在...之間)

findByAgeBetween(int from, int to)

{"age" : {"$gt" : from, "$lt" : to}}

IsNotNull, NotNull(是否非空)

findByFirstnameNotNull()

{"age" : {"$ne" : null}}

IsNull, Null(是否為空)

findByFirstnameNull()

{"age" : null}

Like(模糊查詢)

findByFirstnameLike(String name)

{"age" : age} ( age as regex)

(No keyword) findByFirstname(String name)

{"age" : name}

Not(不包含)

findByFirstnameNot(String name)

{"age" : {"$ne" : name}}

Near(查詢地理位置相近的)

findByLocationNear(Point point)

{"location" : {"$near" : [x,y]}}

Within(在地理位置范圍內(nèi)的)

findByLocationWithin(Circle circle)

{"location" : {"$within" : {"$center" : [ [x, y], distance]}}}

Within(在地理位置范圍內(nèi)的)

findByLocationWithin(Box box)

{"location" : {"$within" : {"$box" : [ [x1, y1], x2, y2]}}}

@Query(value="{ 'name':{'$regex':?2,'$options':'i'}, sales':{'$gte':?1,'$lte':?2}}",fields="{ 'name' : 1, 'age' : 1}")

public Page findByNameAndAgeRange(String name,double ageFrom,double ageTo,Pageable page);

查詢發(fā)生時(shí)間是2016年之后的

> db.station_evaluation.find({"currenttime":{$gt:new Date('2016-12-12 12:12:12')}});

查詢經(jīng)緯度符合條件的

> db.station_evaluation.find({"currenttime":{$gt:new Date('2016-12-12 12:12:12')},"latitude" : "22.560890570746526"});

查詢滿足發(fā)生時(shí)間之后,并且該字段一定存在的

> db.station_evaluation.find({"currenttime":{$gt:new Date('2016-12-12 12:12:12')},"currenttime" : {$exists:1}});

總結(jié)

以上是生活随笔為你收集整理的mongorepository查询条件_MongoRepository实现增删改查和复杂查询【支持的查询类型】...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。