spring-data - 是否可以在 Spring Data 中使用 Mongo $natural 运算符?

标签 spring-data spring-data-mongodb

我希望在 Spring Data MongoDB 中使用 $natural 运算符,如下所示:

https://docs.mongodb.org/v3.0/reference/operator/meta/natural/

使用 MongoTemplate 类可以做到这一点吗?谢谢。

最佳答案

可以使用$natural至少三种样式,其中 1. 和 2. 可能是您正在寻找的样式:

1。使用SortQuery

Query query = new Query().with(new Sort(Direction.ASC, "$natural"));

之后使用 MongoTemplate 进行查询。该查询带有一个排序文档,例如:

{ "$natural" : 1}

2。使用BasicQuery

BasicQuery允许使用自己的DBObject s 用于查询文档、字段(“投影”)和排序。

BasicQuery basicQuery = new BasicQuery(new BasicDBObject());
basicQuery.setSortObject(new BasicDBObject("$natural", 1));

3。使用executeCollectionCallback

这是您访问DBCollection的最广泛的方式。并且您可以使用 native MongoDB 驱动程序 API。请参阅Spring Data Mongo docs了解更多详情。

关于spring-data - 是否可以在 Spring Data 中使用 Mongo $natural 运算符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35754768/

相关文章:

spring-boot - SpringData MongoDB @TypeAlias 升级后停止工作

spring - 使用 Spring Data MongoDB 中的 MongoTemplate 进行查找查询时仅投影某些字段?

java - Spring框架中子文档数组字段中的过滤数组

java - 每个请求如何具有不同的Elastic Spring Data索引

java - 如何在 JPA 2 中创建映射为实体类的 3 或 4 路多对多关联

spring - 如何配置支持 session 的 MongoDB 集群?

java - spring data rest mongodb java.lang.IllegalArgumentException : PersistentEntity must not be null

java - 如何检索存储在 MongoDB 中的子字段

java - Mongodb:循环查询的模式设计是否正确?

java - Spring数据相当于mongodb中的以下聚合操作