使用@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/>
