标签:
一、通过@PathVariabl获取路径中的参数
例如,访问user/123/chan路径时,执行以上方法,其中,参数id=123,name=chan
@Controller使用以下代码来接收参数
@RequestMapping(value="user/{id}/{name}",method=RequestMethod.GET) public String printMessage1(@PathVariable String id,@PathVariable String name, ModelMap model) { System.out.println(id); System.out.println(name); model.addAttribute("message", "111111"); return "users"; }
二、用注解@RequestParam绑定请求参数
例如,访问user?name=chan路径时
@Controller如下
@RequestMapping(value = "/user", method = RequestMethod.GET) public String setupForm(@RequestParam("name") String name, ModelMap model) { System.out.println(name); return "helloWorld"; }
用注解@RequestParam绑定请求参数name到变量name
当请求参数a不存在时会有异常发生,可以通过设置属性required=false解决,
例如: @RequestParam(value="name", required=false)
三、@ModelAttribute获取POST请求的FORM表单数据
提交以下表单
<form method="post" action="user"> 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(value = "/user",method = RequestMethod.POST) public String processSubmit(@ModelAttribute("pojo") Pojo pojo) { return "helloWorld"; }
三、直接用HttpServletRequest获取
例如,访问user?name=chan路径时
@Controller如下
@RequestMapping(value = "/user",method = RequestMethod.GET) public String get(HttpServletRequest request, HttpServletResponse response) { System.out.println(request.getParameter("name")); return "helloWorld"; }
标签:
原文地址:http://www.cnblogs.com/softidea/p/4570805.html