我有一个像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