1、在处理方法入参处使用@RequestParam可以把请求参数传递给请求方法,其属性如下:
(1)value:表示请求参数的参数名。
(2)required:表示请求参数是否必须。默认值为 true, 表示请求参数中必须包含对应的参数,若不存在,将抛出异常。
(3)defaultValue:表示请求参数的默认值。
2、控制器TestRequestMappingController.java
package com.springmvc.web.controller; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestParam; @Controller @RequestMapping("/springmvc") public class TestRequestMappingController { @RequestMapping("/testRequestParam") public String testRequestParam( @RequestParam(value="username") String username, @RequestParam(value="age", required=false, defaultValue="0") int age) { System.out.println("testRequestParam, username="+username+",age="+age); return "success"; } }
【说明】:
(1)如果int类型的age设置为required=false,则当没有传递该值时,系统默认会将null赋值给age,此时会报错,因为age是基本数据类型int,可以将age修改为Integer类型,或者设置age的defaultValue="0"。
(2)在接收参数时,如果不指明@RequestParam,则也会接收到值,只是此时少了非空或默认值的设置。
3、访问代码
<a href="<%=path%>/springmvc/testRequestParam?username=lps&age=31">Test RequestParam</a>