Я пытаюсь разработать REST-сервис с Spring 3.1, где пользователи могут получить доступ к информации. С помощью app/courses/1
можно легко получить доступ к ресурсу по его идентификатору.
Однако я хочу сделать возможным поиск. Вот модель:
public class Course {
private Long id;
private String name;
private Long points;
private Long numberOfParticipants;
}
Например, что если я захочу получить курс с name=foo
и points=1337
, соответствующая строка запроса будет выглядеть следующим образом: app/courses?name=foo&points=1337
.
Я предложил временное решение:
@RequestMapping(value = "courses")
@ResponseBody
public Course getCourse(@RequestParam(value = "name", required = false) String name,
@RequestParam(value ="points", required = false) Long points) {
// TODO
// Find and return course from the database.
}
Однако, это кажется очень утомительным и грязным, поэтому мой вопрос таков: Есть ли у Spring что-то, что немного упрощает это, так что мне не нужно собирать все атрибуты трудным путем?