zoukankan      html  css  js  c++  java
  • @GetMapping、@PostMapping和@RequestMapping的区别

    今天在使用FreeMarker的时候,在使用注解映射方法的时候还是比较混乱,在使用@GetMapping注解的时候,顺手写成了@RequestMapping ,但是发现还是实现了效果,两者能相互替换,但是换成PostMapping就报:Request method ‘GET’ not supported 的错误!所以我就来研究了一下这三者的区别,发现还确实有联系!

    摘:Spring4.3中引进了{@GetMapping、@PostMapping、@PutMapping、@DeleteMapping、@PatchMapping},来帮助简化常用的HTTP方法的映射,并更好地表达被注解方法的语义。

    • 我们就来谈谈这个三者的区别吧!

    @GetMapping

    用于将HTTP GET请求映射到特定处理程序方法的注释。具体来说,@GetMapping是一个作为快捷方式的组合注释
    @RequestMapping(method = RequestMethod.GET)。

    @PostMapping

    用于将HTTP POST请求映射到特定处理程序方法的注释。具体来说,@PostMapping是一个作为快捷方式的组合注释@RequestMapping(method = RequestMethod.POST)。

    @RequestMapping:

    一般情况下都是用@RequestMapping(method=RequestMethod.),因为@RequestMapping可以直接替代以上两个注解,但是以上两个注解并不能替代@RequestMapping,@RequestMapping相当于以上两个注解的父类!

    类似的组合注解还有:
    • @PutMapping、@DeleteMapping、@PatchMapping

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

  • 相关阅读:
    Django2.1发布,Django2.1新特性
    解决tomcat启动慢问题
    ELKstack简介及环境部署
    Django项目中使用celery做异步任务
    vue moment库格式化处理后端传的日期
    vueAdmin ui基础包
    DRF项目工程基础包
    linux文件系统命令和分区 挂载
    linux解压缩基本命令使用
    vim基本操作
  • 原文地址:https://www.cnblogs.com/itchenguo/p/13685497.html
Copyright © 2011-2022 走看看