使用@RequestParam可以将URL中的请求参数,绑定到方法的入参上,并通过@RequestParam的3个参数进行配置
Modifier and Type | Optional Element | Description |
String | defaultValue | 方法入参默认值 |
boolean | required | 是否必须包含该参数,默认为true |
String | value | 请求参数名 |
其实不使用@RequestParam,SpringMVC也会将request的parameter自动绑定到method的parameter中,
使用@RequestParam只不过是对parametr进行配置,和对URL更精确化的配置
代码:
@RequestMapping("/testRequestParam") @Controller public class TestRequestParam { private static final String SUCCESS = "success"; /* * 使用@RequestParam绑定入参,并进行配置 * * 当请求为:testRequestParam/user?name=zs&age=200时 * 输出结果:name = zs class = j1001 age = 200 * * 当请求为:testRequestParam/user?name=zs&age=200&class=j111时 * 输出结果:name = zs class = j111 age = 200 * */ @RequestMapping("/user") public String testParam(@RequestParam(value = "name") String name, @RequestParam(value = "class", required = false, defaultValue = "j1001") String cla, Integer age) { System.out.println("name = " + name + " class = " + cla + " age = " + age); return SUCCESS; } }
URL:
<a href="testRequestParam/user?name=zs&age=200&class=j111"> name=zs age=200 class="j1111" 输入name、age、class</a>
<br/><br/>
<a href="testRequestParam/user?name=zs&age=200"> name=zs age=200 只输入name和age不输入class</a>
<br/><br/>