Обработка предварительной косой черты в @RequestMapping - PullRequest
4 голосов
/ 08 августа 2011

Представьте, что у меня есть контроллер Spring MVC примерно так:

@Controller
@RequestMapping("/base-url")
public class MyController{

    //..snip
    @RequestMapping(method=RequestMethod.GET, value="/edit/{id}")
    public String edit(Model model, HttpServletRequest request, Authentication authentication){
        //..snip
    }
}

Мой вопрос касается внутреннего параметра value для аннотации @RequestMapping на уровне функций.Требуется ли предварительная косая черта на /edit/{id}, или edit/{id} выполняет свою работу так же хорошо?Я бы предположил, что предварительная косая черта установит запрос как абсолютный, независимо от отображения уровня класса, но это, кажется, игнорируется.

Считается ли та или иная лучшая практика?В документации Spring они, похоже, всегда используют предварительную косую черту.Есть ли практическая польза от этого?

Спасибо,

idb.

Ответы [ 2 ]

4 голосов
/ 08 августа 2011

Согласно весенней документации, наличие аннотации @RequestMapping уровня класса подразумевает, что все методы уровня @RequestMappings будут относительны классу метода '.

Однако было бы неплохо иметь возможностьпереопределить относительные отображения в некоторых редких случаях

0 голосов
/ 31 октября 2014

Лично я предпочитаю добавлять предварительную косую черту в значение @RequestMapping. На уровне кода вы можете увидеть: Если значение не начинается с /, тогда Spring (DefaultAnnotationHandlerMapping) добавит его. Подробный ответ вы можете посетить: Использовать или не использовать начальную косую черту в значении для @RequestMapping. Нужны официальные документы или указать источник Spring?

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