Spring MVC URL地址映射
不断前进的皮卡丘 人气:01.@RequestMapping的介绍
- 通过@RequestMapping,我们可以把请求地址和方法进行绑定的,可以在类、方法上进行声明。
- 类级别的注解负责把一个特定的请求路径映射到一个控制器上,把URL和类绑定
- 通过方法级别的注解可以细化映射,可以把一个特定的请求路径映射到某一个具体的方法,把URL和类的方法绑定
2.映射单个URL
@RequestMapping中有一个value属性用来映射url,如果不写的话,默认就是value属性
3.映射多个URL
@RequestMapping({" ", " "})
@RequestMapping({"/test02_01","/test02_02"}) public ModelAndView test02(){ ModelAndView modelAndView = new ModelAndView(); modelAndView.addObject("hello", "test01"); modelAndView.setViewName("hello"); return modelAndView; }
4.映射URL在控制器上
@RequestMapping如果用在类上面,就表示这个类里面的所有响应请求都是以该地址作为父路径
@Controller @RequestMapping("/url") public class UrlController { @RequestMapping("/test01") public ModelAndView test01(){ ModelAndView modelAndView = new ModelAndView(); modelAndView.addObject("hello", "test01"); modelAndView.setViewName("hello"); return modelAndView; } @RequestMapping({"/test02_01","/test02_02"}) public ModelAndView test02(){ ModelAndView modelAndView = new ModelAndView(); modelAndView.addObject("hello", "test02"); modelAndView.setViewName("hello"); return modelAndView; } @RequestMapping("/test03") public ModelAndView test03(){ ModelAndView modelAndView = new ModelAndView(); modelAndView.addObject("hello", "test03"); modelAndView.setViewName("hello"); return modelAndView; } }
5.@RequestMapping的常用属性
5.1value属性
指定控制器的方法URI
@RequestMapping(value="/test01") public ModelAndView test01(){ ModelAndView modelAndView = new ModelAndView(); modelAndView.addObject("hello", "test01"); modelAndView.setViewName("hello"); return modelAndView; }
5.2method属性
指定请求的method类型,可以接受GET,POST,PUT,DELETE等,默认是可以接收GET请求和POST请求
@RequestMapping(value = "/test01",method = RequestMethod.PUT) public ModelAndView test01(){ ModelAndView modelAndView = new ModelAndView(); modelAndView.addObject("hello", "test01"); modelAndView.setViewName("hello"); return modelAndView; }
5.3params属性
params:指定request中必须包含某些参数值,才让该方法处理。
@RequestMapping(value = "/test04",params = "id") public ModelAndView test04(){ ModelAndView modelAndView = new ModelAndView(); modelAndView.addObject("hello", "test04"); modelAndView.setViewName("hello"); return modelAndView; }
如果请求路径没有id则报错
而且params还可以指定请求中属性值必须为多少
6.小结
@RequestMapping是一个用来处理请求地址映射的注解,可用于类或方法上。用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径。
加载全部内容