路径变量@PathVariable
Controller除了可以接收表单提交的数据之外,还可以获取url中携带的变量,即路径变量,此时需要使用@PathVariable注解来设置,其中包含下面几个属性。
- value:指定请求参数的名称,即url中的值,当url中的名称和方法参数名称不一致时,可以使用该属性解决。
- name:同value,两者只能使用一个
- required:指定该参数是否是必须传入的,boolean类型。若为
true,则表示请求中所携带的参数中必须包含当前参数。若为 false,则表示有没有均可。
创建Controller,注意@RequestMapping注解中的写法,这种方式在restful风格的url中使用较多:
@Controller
public class MyController4 {
@RequestMapping("/{userName}/{age}/hello")
public ModelAndView getPath(@PathVariable("userName") String name, @PathVariable int age){
ModelAndView mv = new ModelAndView();
mv.addObject("userName", name);
mv.addObject("age", age);
mv.setViewName("show");
return mv;
}
}
<body>
show页面:<br>
${userName}<br>
${age}<br>
</body>
此时访问网址结果如下:
此时可以直接获取url中的macay和18的值。