Динамический весенний запрос данных в репозиторий jpa с произвольными предложениями AND
я используюSpring data jpa repositories
, Получил требование предоставить функцию поиска с различными полями. Ввод полей перед поиском необязателен. У меня есть 5 полей, скажемEmployeeNumber
, Name
, Married
,Profession
а такжеDateOfBirth
.
Здесь мне нужно запросить только с заданными значениями пользователя и другие поля должны быть проигнорированы. Ex,
Input : EmployeeNumber: ,Name:St,Married: ,Professsion:IT,DateOfBirth:
Query : Select * from Employee e where Name like 'St%' and Profession like 'IT%';
Input : EmployeeNumber:10,Name: ,Married: ,Professsion:IT,DateOfBirth:
Query : Select * from Employee e where EmployeeNumber like '10%' and Profession like 'IT%';
Итак, здесь мы рассматриваем введенные значения и запрашиваем. В этом случае данные Spring имеют ограничение, как указано вэта почта (Не масштабируется и все возможные запросы должны быть написаны) Я используюQuerydsl
, но проблема все еще существуетnull
поля следует игнорировать, и почти все возможные запросы должны быть разработаны. В этомcase 31 queries
, Что делать, если поля поиска6,7,8...
??
Каков наилучший подход для реализации опции поиска с необязательными полями?