В этот период я изучаю демонстрационный пример Spring MVC (загружаемый с панели инструментов STS), и у меня есть несколько простых вопросов о Request Mapping
примерах:
1) На моей home.jsp
странице есть эта ссылка:
<li>
<a id="byParameter" class="textLink" href="<c:url value="/mapping/parameter?foo=bar" />">By path, method, and presence of parameter</a>
</li>
Как вы можете видеть по этой ссылке, я выполняю HTTP-запрос GET, имеющий параметр «foo», содержащий значение: «bar».
Этот HTTP-запрос обрабатывается следующим методом класса контроллера MappingController:
@RequestMapping(value="/mapping/parameter", method=RequestMethod.GET, params="foo")
public @ResponseBody String byParameter() {
return "Mapped by path + method + presence of query parameter! (MappingController)";
}
Этот метод управляет HTTP-запросом (только GET
типом) с параметром с именем "foo"
Как я могу взять значение («полосу») этого параметра и поместить его в переменную внутри кода моего метода по параметрам?
Вы также можете использовать шаблон URI. Если вы структурируете свой запрос в спокойный URL-адрес, Spring может проанализировать предоставленное значение из URL-адреса.
HTML
<li> <a id="byParameter" class="textLink" href="<c:url value="/mapping/parameter/bar />">By path, method,and presence of parameter</a> </li>
Контроллер
@RequestMapping(value="/mapping/parameter/{foo}", method=RequestMethod.GET) public @ResponseBody String byParameter(@PathVariable String foo) { //Perform logic with foo return "Mapped by path + method + presence of query parameter! (MappingController)"; }
Документация по шаблону Spring URI
источник