@RequestMapping,@GetMapping,@PostMapping 的区别(详解)

HTTP请求方法

HTTP请求方法一共有9种,为 GET、POST、HEAD、OPTIONS、PUT、PATCH、DELETE、TRACE、CONNECT。

GET

【获取资源】本质就是发送一个请求来取得服务器上的某一资源。资源通过一组HTTP头和呈现数据(如HTML文本,或者图片或者视频等)返回给客户端。GET请求中,永远不会包含呈现数据。 即GET请求只用来向服务器获取资源,而GET请求本身不应该携带任何呈现数据。

POST

【传输实体文本】向指定资源提交数据进行处理请求。数据被包含在POST请求体中(例如提交表单或者上传文件)。POST 请求可能会导致新的资源的建立或已有资源的修改。

几种注解的区别

@GetMapping

用于将GET请求映射到控制器处理方法上。具体来说,@GetMapping是一个作为快捷方式的组合注解等价于 @RequestMapping(method = RequestMethod.GET)。

@PostMapping

用于将POST请求映射到控制器处理方法上。具体来说,@PostMapping是一个作为快捷方式的组合注解等价于@RequestMapping(method = RequestMethod.POST)。

@RequestMapping

用于将任意HTTP 请求映射到控制器方法上。@RequestMapping表示共享映射,如果没有指定请求方式,将接收GET、POST、HEAD、OPTIONS、PUT、PATCH、DELETE、TRACE、CONNECT所有的HTTP请求方式。@GetMapping、@PostMapping、@PutMapping、@DeleteMapping、@PatchMapping 都是HTTP方法特有的快捷方式@RequestMapping的变体。

@RequestMapping 注解可以在控制器类的级别和/或其中的方法的级别上使用。

在类的级别上的注解会将一个特定请求或者请求模式映射到一个控制器之上。之后你还可以另外添加方法级别的注解来进一步指定到处理方法的映射关系。

需要注意的是,大多数控制器方法都应该映射到一个特定的HTTP方法,而不是使用@RequestMapping共享映射。


参考博客链接:https://blog.csdn.net/demo_yo/article/details/123595846

你可能感兴趣的:(java,spring)