- 1.@RequestMapping的介绍
- 2.映射单个URL
- 3.映射多个URL
- 4.映射URL在控制器上
- 5.@RequestMapping的常用属性
- 5.1value属性
- 5.2method属性
- 5.3params属性
- 6.小结
1.@RequestMapping的介绍
- 通过@RequestMapping,我们可以把请求地址和方法进行绑定的,可以在类、方法上进行声明。
- 类级别的注解负责把一个特定的请求路径映射到一个控制器上,把URL和类绑定
- 通过方法级别的注解可以细化映射,可以把一个特定的请求路径映射到某一个具体的方法,把URL和类的方法绑定
2.映射单个URL
@RequestMapping中有一个value属性用来映射url,如果不写的话,默认就是value属性
![在这里插入图片描述 [Spring MVC学习02]URL地址映射_常用属性](https://file.cfanz.cn/uploads/png/2022/07/27/3/1W83dOOTIe.png)
![在这里插入图片描述 [Spring MVC学习02]URL地址映射_mvc_02](https://file.cfanz.cn/uploads/png/2022/07/27/3/E8d4CFX1C9.png)
3.映射多个URL
@RequestMapping({" ", " "})
@RequestMapping({"/test02_01","/test02_02"})
public ModelAndView test02(){
ModelAndView modelAndView = new ModelAndView();
modelAndView.addObject("hello", "test01");
modelAndView.setViewName("hello");
return modelAndView;
}
![在这里插入图片描述 [Spring MVC学习02]URL地址映射_spring_03](https://file.cfanz.cn/uploads/png/2022/07/27/3/0eF5Ge7e5a.png)
![在这里插入图片描述 [Spring MVC学习02]URL地址映射_mvc_04](https://file.cfanz.cn/uploads/png/2022/07/27/3/16210B5cOG.png)
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;
}
}
![在这里插入图片描述 [Spring MVC学习02]URL地址映射_spring_05](https://file.cfanz.cn/uploads/png/2022/07/27/3/Mae1KS4QRU.png)
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;
}
![在这里插入图片描述 [Spring MVC学习02]URL地址映射_mvc_06](https://file.cfanz.cn/uploads/png/2022/07/27/3/7X55HE89J6.png)
如果请求路径没有id则报错
![在这里插入图片描述 [Spring MVC学习02]URL地址映射_spring_07](https://file.cfanz.cn/uploads/png/2022/07/27/3/6QVDTJ19b6.png)
而且params还可以指定请求中属性值必须为多少
![在这里插入图片描述 [Spring MVC学习02]URL地址映射_常用属性_08](https://file.cfanz.cn/uploads/png/2022/07/27/3/7KaHb89MRA.png)
6.小结
@RequestMapping是一个用来处理请求地址映射的注解,可用于类或方法上。用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径。










