详细介绍@GetMapping和@PostMapping的区别

一、前言

想要了解 @GetMapping 和 @PostMapping 的区别,首先需要了解一下@RequestMapping注解。
了解@RequestMapping注解请点我

二、@GetMapping和@PostMapping的区别

(1)@GetMapping是@RequestMapping(method = RequestMethod.GET)缩写的组合注解,用于将 HTTP 的get 请求映射到特定处理程序的方法注解。

(2)@PostMapping是@RequestMapping(method = RequestMethod.POST)缩写的组合注解,用于将 HTTP 的post 请求映射到特定处理程序的方法注解。

(3)下面来看一看@GetMapping的源码
在这里插入图片描述
上图中最为重要的是这行代码:

@RequestMapping( method = {RequestMethod.GET} )

这行代码即说明@GetMapping就是@RequestMapping附加了get请求方法。也就是说@GetMapping就是一个只能用来处理http的get请求的注解,比较专一,只能干这一件事,不像@RequestMapping可以处理多种http的请求.
同时,可以看到@GetMapping这个注解 是spring4.3版本引入,同时引入的还有@PostMapping、@PutMapping、@DeleteMapping和@PatchMapping,一共5个注解。

(4)在一般情况下我们开发可能都是用@RequestMapping(method=RequestMethod.×××),因为@RequestMapping可以直接替代以上两个注解,但是以上两个注解并不能替代@RequestMapping。
类似的组合注解还有上面提到的:@PutMapping、@DeleteMapping、@PatchMapping三个注解。

三、总结
总结一下:@PostMapping、@GetMapping、@PutMapping、@DeleteMapping、@PatchMapping都可以用@RequestMapping代替,如果怕在映射的时候出错,可以统一使用@RequestMapping(method=RequestMethod.×××),当然这样写的话也有弊端,笼统的全用@RequestMapping, 不便于其他人对代码的阅读和理解!还是建议区分开来写,养成良好的代码习惯!

  • 20
    点赞
  • 61
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值