Как можно вытащить из базы документ по списку ключевых слов? Каждое ключевое слово должно сравниваться с текстом всего докумена. Должен вернуться список документов у которых в полях присуствует хотя бы одно ключевое слово.
@Repository
public interface CvRepository extends MongoRepository<CvRecord, String> {
CvRecord findOneByDocId(String docId);
@Query("{ 'dbObject.skills' : {$regex : ?0}}")
List<CvRecord> findLikeKeywords(String regexp);
List<CvRecord> findAllBy(TextCriteria criteria, Sort sort);
}
public List<Cv> findByKeywords(List<String> keywords) {
Sort sort = new Sort("id");
TextCriteria criteria = TextCriteria.forDefaultLanguage().matchingAny("Android");
List<CvRecord> result = repository.findAllBy(criteria, sort);
List<CvRecord> resul2 = repository.findLikeKeywords("Android");
return null;
}
Пробовал сделать так, ничего не выходит,findAllBy возвращает пустой список. Через repository.findLikeKeywords документы находятся, но мне нужно чтобы не надо было указывать поля для поиска.
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости