带占位符的 URL 是 Spring3.0 新增的功能,例如“/springmvc/{id}”中的id就是占位符,id可以表示任何值。为了取到占位符的值,通过 @PathVariable 可以将 URL 中占位符参数绑定到控制器处理方法的入参中。示例如下:
首先进行web.xml和spring的xml配置,配置方法与SpringMVC之注解RequestMapping用法一节中的配置相同。
一、创建index.jsp请求
本示例需要发送的连接请求为:
<a href="springMVC/testPathVariable/100">Test PathVariable</a>
二、控制器方法
@Controller
@RequestMapping("/springMVC")
public class TestSpringMVC {
@RequestMapping("/testPathVariable/{id}")
public String testPathVariable(@PathVariable("id") Integer id){
System.out.println("testPathVariable: " + id);
return "success";
}
}
当点击index.jsp中请求“springMVC/testPathVariable/100”后,控制器截获该请求并进行处理,@PathVariable注解把请求中的占位符{id}映射到Integer id中,在控制器方法中就可以得到请求的id值。请求成功后回显success.jsp视图