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

本文介绍了在Spring MVC框架中如何通过不同的方式获取HTTP请求参数,包括使用@PathVariable注解从URL路径中捕获变量,利用@ModelAttribute注解处理POST请求中的表单数据,直接通过HttpServletRequest对象访问请求参数,以及采用@RequestParam注解绑定请求参数。

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

     @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表单数据 

 <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> 
 public class Pojo{ 
     private String a; 
     private int b; 

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

直接用HttpServletRequest获取 

     @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) 

     @RequestMapping(value = "/requestParam", method = RequestMethod.GET) 
     public String setupForm(@RequestParam("a") String a, ModelMap model) { 
         System.out.println(a); 
         return "helloWorld";

}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值