Spring MVC 的请求参数获取的几种方法

转自:http://www.blogjava.net/paulwong/archive/2012/03/23/372564.html

通过@PathVariabl注解获取路径中传递参数


JAVA
 @RequestMapping(value  =   " /{id}/{str} " )
 
public  ModelAndView helloWorld(@PathVariable String id, @PathVariable String str) {
 System.out.println(id);
 System.out.println(str);
 
return   new  ModelAndView( " /helloWorld " );
}


用@ModelAttribute注解获取POST请求的FORM表单数据
JSP
< form  method ="post"  action ="hao.do" >
 a: 
< input  id ="a"  type ="text"  name ="a" />
 b: 
< input  id ="b"  type ="text"  name ="b" />
 
< input  type ="submit"  value ="Submit"   />
</ form >


JAVA pojo
  public   class  Pojo{
 
private  String a;
 
private   int  b;
}


JAVA controller
@RequestMapping(method  =  RequestMethod.POST)
public  String processSubmit(@ModelAttribute( " pojo " ) Pojo pojo) {
 
return   " helloWorld " ;
 }


直接用HttpServletRequest获取
JAVA
@RequestMapping(method  =  RequestMethod.GET)
public  String get(HttpServletRequest request, HttpServletResponse response) {
 System.out.println(request.getParameter(
" a " ));
 
return   " helloWorld " ;
}


用注解@RequestParam绑定请求参数a到变量a
当请求参数a不存在时会有异常发生,可以通过设置属性required=false解决,
例如: @RequestParam(value="a", required=false)
JAVA
@RequestMapping(value  =   " /requestParam " , method  =  RequestMethod.GET)
public  String setupForm(@RequestParam( " a " ) String a, ModelMap model) {
 System.out.println(a);
return   " helloWorld " ;} 

你可能感兴趣的:(Spring MVC 的请求参数获取的几种方法)