在提出这个问题之前,我已经对我的问题进行了很多搜索。我需要在spring框架中从mongodb进行全文搜索。到目前为止,我只是尝试使用正则表达式,但它不能满足我的要求。 例如,我的搜索字符串为“增加的世界人口数量”,我的搜索算法应该返回与搜索字符串匹配的文档或者包含搜索字符串中至少一个字的文档。我知道Lucene确实全文搜索,但我不知道如何用我的mongodb弹簧数据实现它,我不知道弹簧数据是否已经提供全文搜索。我需要一个解释它的教程。 我到目前为止做了什么:
Criteria textCriteri = Criteria.where("title").regex(searchStr.trim().replaceAll(" +", " "), "i");
Query query = new Query(locationCriteria).addCriteria(textCriteri).limit(Consts.MONGO_QUERY_LIMIT);
List<MyObject> advs = mongoTemplate.find(query, MyObject.class);
答案 0 :(得分:0)
您可以创建一个&#39;文本&#39; mongodb中的索引并搜索,请参阅http://docs.mongodb.org/manual/core/index-text/
根据您的搜索查询,您可能希望使用更强大的搜索引擎,如ElasticSearch(正如您提到的Lucene)。