Spring JPA Query для поиска всех строк, которые являются частью строки запроса - PullRequest
0 голосов
/ 16 сентября 2018

Я хотел бы объяснить мою проблему на примере.В mongodb у меня есть столбец String.Теперь я хочу перечислить все строки в этом столбце, которые являются частью моей строки запроса.

Например, если моей строкой запроса является «Это моя тестовая строка».

Мои идеальные результаты были бы

"Это", "Это", "Это мое", "Это мое", "Это мое испытание", "Это мое испытание",«Это моя тестовая строка» и т. Д.,

В MySQL я знаю, что «% Like%» будет обрабатывать.Я пробовал «Мне нравится» в монго JPA, но не повезло.

Кто-нибудь может мне помочь?

1 Ответ

0 голосов
/ 17 сентября 2018

Как упоминал JB, нет Mongo JPA, но я предполагаю, что вам нужно поведение, подобное тому, что Spring Data JPA делает для вас, то же самое делает Spring Data MongoDB.

Для этого вам нужно использовать In и набор строковой части вашего запроса. Поэтому вам нужно будет сначала разбить вашу строку.

В вашем репозитории используйте DSL-запрос Spring Data с In i.e:

public interface YourDocumentRepository extends MongoRepository<YourDocument, ClassTypeOfYourId> {

  public List<YourDocument> findByNameIn(string[] text);

}

Если имя вашего строкового поля superDuper, пример будет:

public List<YourDocument> findBySuperDuperIn(string[] text);

Вы должны отрегулировать. Для более подробной информации, посмотрите ссылку или какой-то пример здесь .

...