Spring Data - MongoDB - 更多与之关联的术语

时间:2017-09-25 20:53:03

标签: java spring mongodb spring-data

我在Spring数据/ MongoDB应用程序中使用此搜索方法:

 @Query("{$text : { $search : ?0 } }")
List<DocumentFile> findBySearchString(final String searchString);

我的问题是我必须为searchString提供什么,我得到DocumentFiles,其中存在两个术语(例如term1 AND term2或term1 + term2)。 是否有与Spring Data和MongoDB类似的AND?

1 个答案:

答案 0 :(得分:1)

是的,您可以实现使用mongo存储库

List<DocumentFile> findByString1AndString2(String String1,String String2);

好的,根据您的上一轮评论 - 我们可以这样做吗

使用mongo模板

   Criteria regex = Criteria.where("name").regex("*.xxxx.*", "i");
    mongoOperations.find(new Query().addCriteria(regex), DocumentFile.class);

使用mongo存储库

List<DocumentFile> documents= repository .findByQuery(".*ab.*");
interface repository extends MongoRepository<DocumentFile, String> {
     @Query("{'name': {$regex: ?0 }})")
     List<DocumentFile> findByQuery(String name);
}

希望它有用。