2016-10-11 2 views
0

Я новичок в Spring framework и, возможно, это простой вопрос.Как контроллер Spring управляет параметром неявно?

У меня есть ссылка следующим образом и попытка контроллера Spring управляет значением «201610061023» этой ссылки. Однако мой код не работал.

Я знаю, что это значение может быть привязано как параметр или путь в пути, но мне просто интересно, могу ли я передать это значение неявно?

спасибо.

<a href="./Order" name="test">201610061023</a> 

@RequestMapping(value = "/Order") 
public String requestHandlingMethod(@ModelAttribute("test") String name, HttpServletRequest request) { 
    return "nextpage"; 
} 

ответ

0

Весна не будет обрабатывать название ссылки просто потому, что название ссылки не будет, посланных браузер. Для того, чтобы отправить его, вы можете:

  1. добавить значение в качестве параметра: <a href="./Order?id=201610061023" name="test">201610061023</a>
  2. добавить значение в качестве переменной пути: <a href="./Order/201610061023" name="test">201610061023</a>
  3. добавить JavaScript, который будет копировать название OnClick в href или отправить сгенерированный URL с document.location. Это может быть автоматизировано, но это довольно редко.
+0

О, невозможно. Готов, спасибо! – Roaid

0

Вашего а-тег не так, вы необходимо представить идентификатор, нет неявного способа представить ссылку-текст (за исключением много кода Java скрипта)!

<a href="./Order/201610061023" name="test">201610061023</a> 


@RequestMapping(value = "/Order/{orderId}") 
public String requestHandlingMethod(@PathVariable("orderId") long orderId, @ModelAttribute("test") String name, HttpServletRequest request) { 
    return "nextpage"; 
} 

или

<a href="./Order?orderId=201610061023" name="test">201610061023</a> 


@RequestMapping(value = "/Order") 
public String requestHandlingMethod(@RequestParam("orderId") long orderId, @ModelAttribute("test") String name, HttpServletRequest request) { 
    return "nextpage"; 
} 

См @RequestParam vs @PathVariable разницу между этими двумя подходами

+0

Благодарим за помощь. Я знаю эти два пути, и в этом случае я хочу найти неявный способ передачи параметра. – Roaid

Смежные вопросы