2012-09-05 73 views
0

让我们说我有一个这种格式的URL action.htm?key0 = value0 & key1 = value1。我已经将此绑定到控制器。现在,使用@PathVariable如何绑定key0和key1?例如:Spring MVC和请求参数绑定

@RequestMapping(value = "/action", params="myParam=myValue") 
public String action(@PathVariable String key0, @PathVariable String key1, Model model) {  

不起作用。我可以看到的所有示例都是用于休息风格绑定的,找不到关键值类型的任何内容。

回答

2

使用RequestParam注释,如:

public String create(@Valid Message message, BindingResult bindingResult, @RequestParam(required = false) Integer page, @RequestParam(required = false) Integer size) { 

润通的例子在RequestParam注释使用值= “”,例如:

@RequestParam(value = "size", required = false) Integer size 

但是,如果没有提供任何值,它将使用参数名称,因此,我认为这是重复的,所以宁愿不要使用value =“”属性。

1

对于宁静做到这一点的:

@RequestMapping(value = "/{key0}/{key1}", method = RequestMethod.GET) 
public String action(@PathVariable String key0, @PathVariable String key1) 
+0

您的意思是指其他格式的网址,还是可以与我发布的示例网址一起使用? – user1597858

+0

它不适用于您发布的网址,请使用requestparam – NimChimpsky