一、请求参数
请求参数采用key = value形式,并用“&”分隔。例如下面的URL带有名为name和pwd的请求参数。
localhost:9090/showUser?name=spring&pwd=spring
在传统的servlet编程中,可以使用HttpServletRequest的getParameter方法来获取请求参数值。
String name = httpServletRequest.getParameter(“name”);
Spring MVC 提供了一个更简单的方法来获取请求参数:通过注解@RequestParam来注释方法参数。根据上面的URL,编写一个映射函数。
@RequestMapping(value="/showUser/")
public String testRequestParam(@RequestParam String name, @RequestParam String pwd, Map<String, Object> model){
model.put("name", name);
model.put("pwd", pwd);
return "showUser";
}
运行结果如下:
二、路径参数
路径参数类似请求参数,但没有key部分,只是一个值。例如下面的URL:
http://localhost:9090/showUser/spring
其中的spring是表示用户的密码字符串。在Spring MVC中,spring被作为路径变量用来发送一个值到服务器。Sping 3以后Spring 3以后支持注解@PathVariable用来接收路径参数。为了使用路径变量,首先需要在RequestMapping注解的值属性中添加一个变量,该变量必须放在花括号之间,例如:
@RequestMapping(value= “/showUser/{pwd}”)
然后在方法签名中加上@PathVariable注解。具体代码如下:
@RequestMapping(value= "/showUser/{pwd}")
public String testPathVariable(@PathVariable(name="pwd") String password, Map<String, Object> model){
model.put("pwd", password);
return "showUser";
}
运行结果:
可以在请求映射中使用多个路径变量。例如,下面定义了userId和orderId两个路径变量。
@RequestMapping(value= “/showUser/{userId}/{orderId}”)。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。