我有一個像Spring框架不映射列表請求參數正確
/path?param=value1¶m=value2
映射到一個List<String>
PARAM控制器端的web請求。
需要注意的重要一點是,value1和value2的值可以包含逗號(,)。
我看到2個不同的行爲與春季請求參數映射。
情況1 /path?param=part1%2Cpart2 (url encoded comma)
彈簧請求參數映射這對尺寸2 part1的第2部分和作爲元素的列表,但HttpServletRequest.getParameterValues("param")
被正確地分配給尺寸1的陣列值= part1的,第2部分
案例2. /path?param=part1%2Cpart2¶m=part3%2Cpart4
在這種情況下,Spring正確地將其映射到2個值的列表,HttpServletRequest參數也是如此。
我猜Spring支持使用csv值映射List
參數並重復參數。有沒有辦法告訴Spring使用特定的映射方法?
我使用彈簧MVC 3.2.13
@Controller
public class MyController {
@RequestMapping(value = "/mymethod", method = RequestMethod.POST)
public @ResponseBody Boolean method(MyRequest myReq, HttpServletRequest request) {
}
}
public class MyRequest {
List<String> param;
}
從SpringMVC 3的經驗,我從來沒有見過'@控制器'處理GET參數中的多個鍵。發佈你的'@ Controller'代碼,然後我們有更多的信息可以使用。 –
添加了控制器代碼。 – pkrish