请求映射中的两个参数

时间:2015-02-18 20:44:25

标签: spring-mvc restful-url

我在spring MVC控制器中使用两个参数进行请求映射时遇到问题。

             /* Jsp page code*/

<c:url var="url_confirm" value="/admin/orderList"/>
<a href="${url_confirm}/${li.orderId}/${"confirmed"}" >Confirmed</a>

在我的控制器中我正在尝试这样但我得到了错误: -

@RequestMapping("/admin/orderList/${li.orderId}/${"confirmed"}")
public String changeStatus(@RequestParam("li.orderId") Integer orderId,@RequestParam("confirmed") String status) {

      // TODO
    System.out.println(orderId);
    System.out.println(status);
    return "orderList";
}

如何使用两个参数正确映射URL以获取控制器上的值(orderId,status)?

1 个答案:

答案 0 :(得分:2)

在这种情况下,您需要@PathVariable而不是@RequestParam。 所以将映射更改为,

@RequestMapping("/admin/orderList/{orderId}/{confirmed}")
public String changeStatus(@PathVariable("orderId") Integer orderId, @PathVariable("confirmed") String status) {

   // your code here
}

有关详情,请参阅this主题。