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, 不便于其他人对代码的阅读和理解!还是建议区分开来写!养成良好的代码习惯!

  • 相关阅读:
    ALV控件的简单案例之二:自定义ALV…
    上传文件时显示选择窗口
    RZ10设置ECC系统参数
    下载时,弹出下载地址选择窗口
    使用程序实现多client切换
    ALV控制某列的颜色
    WebService 创建  发布 调用整个流…
    出口增强 以EXIT_SAPLSZAR_001为例
    使用SAP memory 调用标…
    FunctionModel调用ALV时,自定义工…
  • 原文地址:https://www.cnblogs.com/itchenguo/p/13685497.html
Copyright © 2011-2022 走看看