注解说明
@RequestMapping
注解的主要用途是将Web请求与请求处理类中的方法进行映射。Spring MVC
和Spring WebFlux
都通过RquestMappingHandlerMapping
和RequestMappingHndlerAdapter
两个类来提供对@RequestMapping
注解的支持。
@RequestMapping
注解对请求处理类中的请求处理方法进行标注;@RequestMapping
注解拥有以下的六个配置属性:
value
:映射的请求URL或者其别名
method
:兼容HTTP的方法名
params
:根据HTTP参数的存在、缺省或值对请求进行过滤
header
:根据HTTP Header的存在、缺省或值对请求进行过滤
consume
:设定在HTTP请求正文中允许使用的媒体类型
product
:在HTTP响应体中允许使用的媒体类型
提示:在使用@RequestMapping
之前,请求处理类还需要使用@Controller
或@RestController
进行标记
代码演示
具体用法如下:
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
@Controller
public class DemoController {
@RequestMapping(value = "/demo", method = RequestMethod.GET)
public String demo(){
return "/demo";
}
}
@RequestMapping
还可以对类进行标记,这样类中的处理方法在映射请求路径时,会自动将类上@RequestMapping
设置的value拼接到方法中映射路径之前,如下:
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
@Controller
@RequestMapping(value = "/demo")
public class DemoController {
@RequestMapping(value = "/demo", method = RequestMethod.GET)
public String demo(){
return "/demo";
}
}
评论区