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

与HibernateRepository类似,通过继承MongoRepository接口,我们可以非常方便地实现对一个对象的增删改查,要使用Repository的功能,先继承MongoRepository接口,其中T为仓库保存的bean类,TD为该bean的唯一标识的类型,一般为ObjectId。之后在service中注入该接口就可以使用,无需实现里面的方法,spring会根据定义的规则自动生成。

下面是支持的查询类型,每三条数据分别对应:(方法后缀,方法例子,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(在地理位置范围内的)

findByLocationWithin(Circle circle)

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

Within(在地理位置范围内的)

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);

查询发生时间是2016年之后的

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

查询经纬度符合条件的

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

查询满足发生时间之后,并且该字段一定存在的

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/305500.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python numpy数据类型_python numPy模块 与numpy里的数据类型、数据类型对象dtype

学习链接:http://www.runoob.com/numpy/numpy-tutorial.html 简介: numPy是python语言的一个扩展库,是一个运行非常快的数学库,主要用于数组计算。它支持大量的维度与数据运算还针对数组运算提供大量的数学函数库。它包含&#xf…

AWS 宣布创建“真正”开源的 Elasticsearch 分支

喜欢就关注我们吧!Elasticsearch 和 Kibana 宣布变更开源许可证后引发了各方激烈讨论,但整起事件的另一个关键角色——被 Elastic 公司 CEO 发文怒斥的 AWS 却一直没有发声。然而就在今日,AWS 宣布将基于目前仍为开源状态的 Elasticsearch 和…

备忘贴,请勿看

今天看了一个黑鹰的动画教程,教程中提到了对白宫***,结果猜解出用户名和密码分别是admin和password。感觉不太对吧,[url]www.whitehouse.org[/url]就这么简单?估计有两种可能,一是教程作者先把网站黑掉了,再…

数控车椭圆编程实例带图_数控车床任意位置椭圆宏程序编程,内附实例程序!...

不在轴线上的椭圆宏程序编制也没有什么特殊的,只是改下偏置的数值罢了。椭圆的参数方程为:Xa*COSθYb*SINθ可改写为: #130*cos[#3] #3为参数方程对应的中角度#220*sin[#3]图中椭圆长半轴30mm,短半轴20mm,椭圆中心位置…

在服务器系统怎么设置地址怎么办,路由器怎么设置地址

路由器怎么设置地址路由器怎么设置地址呢?你是否也很想了解呢?今天我们就一起来看看相关内容吧!路由器怎么设置地址一、自动设置IP地址,使用DHCP服务器功能DHCP是路由器的一个特殊功能,使用DHCP功能可以避免因手工设置IP地址及子网掩码所产生的错误。(…

python迅雷_迅雷下载链接解析器。

1.[代码][Python]代码 Python语言: 迅雷下载链接解析器。 #!/usr/bin/env python #coding:utf-8 import os import base64 import sys def baseurl(argv): if len(argv) 2: url argv[1] else: print "Input Error!\n usage: %s url"%(argv [0]) sys.exit(1) if url…

祝贺 在线文件管理系统 访问量 超过500

到目前为止,<<在线文件管理系统>>一文已有超过500位网友访问过了&#xff0c;深感欣慰。祝贺一下&#xff0c;转载于:https://www.cnblogs.com/GISDEV/archive/2007/10/21/932384.html

dotNet Core 3.1 使用 Elasticsearch

Elasticsearch 是基于 Lucene 的搜索引擎。可以非常方便地实现分布式的全文搜索&#xff0c;本文介绍在 dotNet Core 3.1 中怎样使用 Elasticsearch 。版本dotnet Core &#xff1a;3.1Elasticsearch&#xff1a;7.6.1Kibana&#xff1a;7.6.1NEST&#xff1a;7.10.1Docker&am…

python笔试题 github_简单的python面试题,居然

晚上翻手机&#xff0c;看见一道网友发的python面试题求助帖&#xff0c;当时简单扫一眼就跳过了&#xff0c;但下来仔细想想觉得还蛮有趣&#xff0c;开电脑梳理下思路&#xff0c;因为没有官方答案&#xff0c;所以大家可以一起来做做&#xff0c;其中涉及的python知识点还是…

思科3550 IOS

两种方法升级思科3550 IOS 有两种方法做3550 IOS升级&#xff1a; int vlan 1 ip address 192.168.1.1 255.255.255.0 no shut int f0/1 no shut 默认的接口都VLAN 1下的 一使用.bin文件形式的IOS 1.copy tftp flash: 2.boot system flash:.bin 3.show boot 确定下次启动是用新…

沙洋有几个微服务群_集群 分布式 微服务

转自&#xff1a;https://blog.csdn.net/qq_37788067/article/details/79250623概念:集群是个物理形态&#xff0c;分布式是个工作方式。1.分布式&#xff1a;一个业务分拆多个子业务&#xff0c;部署在不同的服务器上2.集群&#xff1a;同一个业务&#xff0c;部署在多个服务器…

聊聊如何构建一支自驱团队(一)

每一个管理者都致力于构建一支自我驱动的团队&#xff0c;更有甚至&#xff0c;许多人公开宣称&#xff0c;在一支20人以下的团队其实是不用管理手段的&#xff0c;靠团队自驱就能实现团队的快速运作&#xff0c;但知易行难&#xff0c;如果不能根据组织特色灵活的运用管理手段…

java之for循环

/*for循环里i计数器需要用int声明* 本程序是计算*135。。。99。* i2处可以写成i,i 或者ii2如果间隔50 *显然不是一种好的方法*copyright paryjie qq:613972*/public class TextFor {public static void main(String[] args) {long result 0; //用result来存放结果。for(int i1…

action评测 osmo_前后双屏 大疆OSMO ACTION运动相机评测

2019年5月15日晚&#xff0c;大疆正式发布了旗下全新一代运动摄像机&#xff1a;OSMO ACTION。作为OSMO家族的新成员&#xff0c;这款产品的诞生其实一点也不意外&#xff0c;一方面是vlog视频的火爆加速了用户对拍摄设备的使用需求&#xff0c;另外一方面则是运动摄像机这块的…

在.NET Core 中实现健康检查

.NET Core中提供了开箱即用的运行状况检查&#xff0c;首先&#xff0c;我将在.NET Core API应用程序中执行运行状况检查&#xff0c;接下来&#xff0c;我们将使用DbContext集成SQL Server或数据库的运行状况检查&#xff0c;最后是如何实现自定义服务的运行状况检查。在ASP.N…

python3.7安装keras教程_Python3.7安装keras和TensorFlow的教程图解

win10 Python3.7安装keras深度学习集成包 TensorFlow 和Ubuntu下安装keras 在win10下安装 安装时必须检查你的python是否为64位&#xff0c;32位不支持&#xff01;&#xff01;&#xff01; 32 位卸载下载其中的64位在python官网 然后在 pip install --upgrade tensorflow 如果…

(1)学习数组,集合,IEnumerable接口,引申学习迭代器

发展:数组-->集合-->泛型 (1)数组 1. 数组数据结构是System.Array类的一个实例. 2. System.Array类的语法为 [SerializableAttribute] [ComVisibleAttribute(true)] public abstract class Array : ICloneable, IList, ICollection, IEnumerable 3. 下面看一个使用数组…

华为交换机初始化_华为交换机恢复出厂设置

华为交换机恢复出厂设置(2008-10-06 22:29:54)在设备重启时按CtrlB进入BOOT MENU之后&#xff0c;Press Ctrl-B to enter Boot Menu... 5Password :缺省为空&#xff0c;回车即可1. Download application file to flash2. Select application file to boot3. Display all files…

领域驱动设计-从贫血模型到充血模型

背景领域模型对象只是用来存储应用的数据。业务逻辑位于服务层中&#xff0c;管理域对象的数据。在服务层中&#xff0c;应用的每个实体对应一个服务类。这种模式大家是不是很熟悉&#xff0c;尤其是在中小项目或者项目刚启动的时候&#xff0c;都是怎么方便怎么来&#xff1b;…

python离群点检测_如何从熊猫DataFrame中检测峰点(离群值)

我有一个带有多个速度值的熊猫数据帧&#xff0c;这些速度值是连续移动的值&#xff0c;但它是一个传感器数据&#xff0c;因此我们经常在中间出现误差的情况下&#xff0c;移动平均值似乎也无济于事&#xff0c;所以我可以采用什么方法用于从数据中删除这些离群值或峰点&#…