Как использовать поиск в Hibernate для поиска по нескольким полям? - PullRequest
0 голосов
/ 30 апреля 2019

Я пытаюсь найти способ поиска элементов в моей базе данных с помощью поиска Hibernate.

У меня есть объект с несколькими полями, и поля, по которым я хочу искать, проиндексированы. Я хотел бы иметь возможность искать элементы с fieldA==valueA && fieldB==valueB (и, возможно, добавить больше полей к этому поиску, если пользователь выберет больше критериев поиска).

Я даже не уверен, что мне следует использовать поиск Hibernate для этого или просто создать собственный запрос.

1 Ответ

0 голосов
/ 30 апреля 2019

Вы пробовали hql-запрос?

Query q = s.createQuery("from foo Foo as foo where foo.name=:name and foo.size=:size");
q.setProperties(fooBean); // fooBean has getName() and getSize()
List foos = q.list();

Источник: http://docs.jboss.org/hibernate/core/3.5/reference/en/html/queryhql.html

Отредактировано:

Видит пример Lucene для поиска по разным полям. https://stackoverflow.com/a/16009337/7141562

В любом случае, я бы остановился на режиме JPA / Hibernate, потому что это кажется более простым и ясным решением.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...