Какую стратегию Spring я должен использовать при использовании строк запроса для поиска объекта? - PullRequest
1 голос
/ 03 февраля 2012

Я пытаюсь разработать 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 что-то, что немного упрощает это, так что мне не нужно собирать все атрибуты трудным путем?

1 Ответ

3 голосов
/ 03 февраля 2012
@RequestMapping(value = "/courses")
@ResponseBody
public Course getCourse(Course course) {

}

Это сопоставит все параметры запроса с полями объекта команды Course.

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