Java 如何在mongo spring聚合中使用文本搜索
我如何将一个简单的mongo shell$匹配短语翻译成它的等价词 在Java中的mongo spring中-使用聚合Java 如何在mongo spring聚合中使用文本搜索,java,spring,spring-mongo,fulltext-index,Java,Spring,Spring Mongo,Fulltext Index,我如何将一个简单的mongo shell$匹配短语翻译成它的等价词 在Java中的mongo spring中-使用聚合 $match: { $text: { $search: "read" } } Spring数据内置了对文本搜索的支持 我使用了以下依赖项: <dependency> <groupId>org.springframework.data</groupId> <artifactId>spring-data-mongo
$match: { $text: { $search: "read" } }
Spring数据内置了对文本搜索的支持 我使用了以下依赖项:
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-mongodb</artifactId>
<version>1.8.2.RELEASE</version>
</dependency>
谢谢,你知道如何使用聚合吗?谢谢!在web上的任何位置都找不到此示例!
TextCriteria criteria = TextCriteria.forDefaultLanguage().matchingAny("read");
Query query = TextQuery.queryText(criteria);
List<klass> list = mongoTemplate.find(query, klass, "collection_name");
BasicDBObject match = new BasicDBObject("$match",
new BasicDBObject("$text", new BasicDBObject("$search", "COST")));
List<DBObject> aggregationList = new ArrayList<DBObject>();
aggregationList.add(match);
AggregationOutput aggregationOutput = mongoTemplate.getCollection("categoryMaster")
.aggregate(aggregationList);
List<DBObject> dbObjects = (List<DBObject>) aggregationOutput.results();
for(DBObject dbObject : dbObjects) {
mongoTemplate.getConverter().read(klass, dbObject);
}