У меня есть служба REST/учетные записи, которая возвращает все данные учетных записей (Number, Name).Spring MVC REST API для фильтрации/поиска из коллекции
Требование: следует поддерживать ниже шаблон поиска/фильтр с любой комбинацией «И» или «ИЛИ», а не retruning всей коллекции.
- StartsWith
- EndsWith
- Содержит
Вопрос 1: Являются ли они ниже дизайн API правильно (RESTful) или какой-либо лучшего способа сделать то же самое например -
/accounts?name^My Account 123**or**number~ACC1234
(^ "==> Начинается с," ~ "==> заканчивается)
/accounts?name^My Account 123**and**number~ACC1234
(^ "==> начинается с "~" ==> заканчивается)
/accounts?name$ACC123
($ ==> Коллекция счет содержит ACC123)
Spring Controller:
Планирование получения этого шаблона фильтра (параметра запроса) как @RequestParam
и регулярное выражение для анализа шаблона, а затем применить &, чтобы получить его из хранилища данных. Недостатком является любой новый шаблон фильтра, который потребует изменения в классе Controller.
Вопрос 2: Есть ли какие-либо функции, доступные в Spring 3 для поиска/фильтрации из коллекции?
Спасибо!
Почему бы не использовать apache solr, который доступен как модуль весной, как весовые данные solr для справки http://docs.spring.io/spring-data/solr/docs/2.0.4.RELEASE/reference/html/ –
Есть ли причина, по которой вы не используете параметры запроса? –