RequestMapping请求映射方式

1.标准映射

规则:

1) @RequestMapping可以设置在类上,也可以设置在方法上

2) 请求的映射规则是:类上的RequestMapping + 方法上的RequestMapping

3) 如果没有写 / ,SpringMVC会自动补全

4) 类上的RequestMapping可以省略,这时直接用方法的RequestMapping访问

5) 路径不可重复

2.Ant风格映射(通配符映射),有以下三种方式:

3.占位符映射

例如:

@RequestMapping(value="/users/{userId}") :

其中{xxx}占位符, 请求的 URL 可以是 “/users/123456”或“/users/abcd”,重点是通过@PathVariable 可以提取 URI 模板模式中的{xxx}中的xxx变量。

@RequestMapping("show1/{id}")
public ModelAndView show1(@PathVariable("id") Long id){
     ModelAndView mv=new ModelAndView("hello");
     mv.addObject("msg","占位符映射,id: "+id);
     return mv;              
}

注:如果传递的参数格式不正确,会出现客户端发送的语法不正确(The request sent by the client was syntactically incorrect )

4.请求方式的限定(Get,Post,Delete,Put...)

通过@RequestMapping注解中的 method属性来限定客户端的请求方式,method属性可以接收的是一个枚举数组:

例如:method=RequestMethod.POST/GET.......

如果你要指定多种操作方式:method={RequestMethod.POST,RequestMethod.GET}

检测方法:利用Advanced Client根据检测

5.请求参数限定

通过@RequestMapping注解的params属性来对请求的参数进行限定:

@RequestParam用来接收(params)的参数

@RequestMapping(value="/show2",param="id")
public MNodelAndView show2(@RequestParam("id") Long id){
       ModelAndView mv=new ModelAndView("hello");
       mv.addObject("msg","请求成功! 你输入的ID为: "+id);
       return mv
}    
原文地址:https://www.cnblogs.com/lichangyun/p/8524780.html