Как правильно реализовать фильтрацию RestAPI в Spring Boot приложении?
Добрый день.
Делаю не большой rest api приложение.
Есть модуль который общается с бд (common) есть другой модуль использующий тоже common и сейчас очередь дошла до rest api модуля который тоже будет использовать common модуль. Common написан без использования hibernate используется с3p0 и mysql connector.
Вопрос как правильно сделать фильтрацию элементов при рест запросе? Например есть
GET /video/?releaseFrom=02102013&releaseTo=02102014&imdbRate=gt(7.5)
соответственно параметры фильтров не обязательные, если запустить вообще без параметров вернется последние 20 записей, к примеру. Набор параметров может быть другой, например может быть title передан или еще что то.
Вопрос как правильно осуществить фильтрацию, писать на все возможные варианты разные sql запросы очень сомнительно.
Правильно ли создать отдельную процедуру на самой бд и уже в ней собирать как то нужный запрос при помощи конкатенации. Или собирать таким же образом запрос в java в зависимости от наличия параметров. Мутная работа не совсем ясная видится с подготовленными параметрами запроса в этом случае.
Как это делается в реальных проектах?)