SpringMVC 的请求参数获取的几种方法

 

通过@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 " ;} 

猜你喜欢

转载自angie.iteye.com/blog/2327628