1.作用
如果控制器标注的方法的参数名称与前端传递过来的参数名称不一致,使得SpringMVC无法自动启动,那么我们可以使用该注解实现前后端参数的绑定。
2.相关属性
value/name:这两个属性都是一个作用,都是描述参数的名称,也就是前端传递过来的参数的名称。
required:默认值为true.标识当前的参数是必须携带的,如果前端没有携带该参数,就会报404的异常。如果是false就是不必须的
defaultValue:默认值 如果前端没有提交参数(null),就使用默认值替代。
3.演示
首先先定义一个超链接
<a
href="${pageContext.request.contextPath}demo1/testRequestParam?
username=eric&address=china">[测试RequestParam注解]</a>
控制器代码
@RequestMapping("testRequestParam")
public String testRequestParam(
@RequestParam("username") String name,
@RequestParam(value = "address", required = false, defaultValue = "ENG") String addr) {
System.out.println("username:" + name + "address:" + addr);
return "success";
}
前端的参数名称分别为username和address,如果只有一个属性时,默认是value或name。所以可写可不写。