在Spring MVC框架中,@RequestMapping注解的主要作用是配置请求路径,除此以外,还可以配置请求方式,例如:

@RequestMapping(value = "/add-new", method = RequestMethod.POST)

注意:

  • 在配置注解属性时,如果配置的是value属性,且只配置这1个属性的值,可以不必显式的写出属性名,即:@RequestMapping("/add-new")@RequestMapping(value = "/add-new")是完全等效的,但是,如果配置多个属性,则每个属性的名称都是必须的
  • @RequestMappingmethod属性是用于限制请求方式的,在没有配置此属性时,所有的请求方式都是允许的,如果配置了此属性,将限制为所配置的请求方式,如果使用其它请求方式,将出现405错误
  • @RequestMappingmethod属性的值类型是数组类型的,当配置注解属性时,如果属性值是数组类型,且当前只配置1个值时,可以不必使用大括号将值框住,即:@RequestMapping(method = RequestMethod.POST)@RequestMapping(method = {RequestMethod.POST})是完全等效的,如果要配置多个值,则必须使用大括号框住,各值之间使用逗号分隔

为了简化限制请求方式的代码,Spring MVC框架提供了与@RequestMapping相关的注解:

  • @GetMapping
  • @PostMapping
  • @PutMapping
  • @DeleteMapping
  • @PatchMapping

通常,以获取数据为主要目的,应该设计(或限制)为GET请求,否则,全部使用POST请求,并不以数据是否敏感、数据量是否较大作为区分标准。

附:关于GET和POST请求方式

GET:通过浏览器的地址栏发出、使用网页中的超链接(使用<a>标签)发出的请求,或者通过<form>表单却未指定method="post",或者使用JavaScript中的相关API显式的发出GET请求,都是GET请求,GET请求的典型特征是将请求参数体现在URL上,例如 http://localhost:8080/test?id=1,所以,GET请求不适合传输敏感参数,并且,受到URL长度的限制(取决客户端**和**服务器端,通常,建议控制在1KB以内),虽然GET存在一些不足,但是,GET请求可以用于存储、缓存、分享,另外,GET请求比POST更快!

POST:通过<form>表单指定method="post",或者使用JavaScript中的相关API显式的发出POST请求,都是POST请求,POST请求的典型特征是请求参数是封装在请求体中的,所以,POST请求可用于传输敏感参数,请求参数不受到长度限制,相比之下,POST不可以用于需要存储、缓存、分享的场景,并且,比GET请求要慢一些!

Spring MVC框架中关于限制请求方式相关推荐

  1. 【Java学习路线之JavaWeb】Spring MVC框架入门教程

    文章目录 读者 阅读条件 MVC设计模式简介 JSP+JavaBean Servlet+JSP+JavaBean MVC优缺点 优点 缺点 Spring MVC是什么 Spring MVC优点 第一个 ...

  2. Java Spring MVC框架 VII

    Java Spring MVC框架 VII Spring MVC小结 1.小结 ● 关于Spring MVC框架,你应该(1/5): – 理解Spring MVC框架的作用 – 接收请求,响应结果,处 ...

  3. Spring MVC 应用中异常处理流程分析 : sendError() vs setStatus()

    sendError() Spring MVC应用处理某个请求时遇到异常的话,除非开发人员明确地指定使用setStatus(),否则都是面向sendError()的处理流程,总的来说该处理流程概括如下 ...

  4. Spring MVC环境中的文件上传功能实现

    在实际开发过程中,尤其是web项目开发,文件上传和下载的需求的功能非常场景,比如说用户头像.商品图片.邮件附件等等.其实文件上传下载的本质都是通过流的形式进行读写操作,而在开发中不同的框架都会对文件上 ...

  5. Spring MVC 框架搭建及详解

    现在主流的Web MVC框架除了Struts这个主力 外,其次就是Spring MVC了,因此这也是作为一名程序员需要掌握的主流框架,框架选择多了,应对多变的需求和业务时,可实行的方案自然就多了.不过 ...

  6. 手动写个类似的Spring MVC框架试试

    Spring MVC是个经得起考验的一个成熟框架,在企业内也是一个很多开发者选择的框架. SpringMVC是一种基于Java,实现了Web MVC设计模式,请求驱动类型的轻量级Web框架,即使用了M ...

  7. 从零开始学java 框架_从零开始学 Java - 搭建 Spring MVC 框架

    如果创建一个 Spring 项目 Spring MVC 框架在 Java 的 Web 项目中应该是无人不知的吧,你不会搭建一个 Spring 框架?作为身为一个刚刚学习Java的我都会,如果你不会的话 ...

  8. springmvc流程_基于Spring MVC框架的Http流程分析

    一.问题提出 我们可以方便的利用Spring MVC进行业务开发,请求的大部分工作都被框架和容器封装,使得我们只需要做很少量的工作.但是整个http请求流程是怎么样的?Spring MVC框架在其中起 ...

  9. Spring MVC框架-持久层用hibernate自动化(1)

    ##Spring MVC Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面.Spring 框架提供了构建 Web 应用程序的全功能 MVC ...

最新文章

  1. AIADATA 独家深度解密:百度XuperChain开源区块链基础平台
  2. CRC-16校验C#代码
  3. http长/短轮询和WebSocket 的介绍和比较
  4. Java集合——HashMap、HashTable以及ConCurrentHashMap异同比较
  5. GridView里的一点小功能:截取多余字符、改变鼠标经过行的样式
  6. 中对缺失数据的预处理_数据预处理也有套路的
  7. sql server2008 如何获取上月、上周、昨天、今天、本周、本月的查询周期(通过存储过程)...
  8. Netch + Connectify 实现代理转全局并共享给其他设备,例如Kindle
  9. Extendsim 系统仿真的强大工具,多方法论模拟--介绍和试用
  10. Redis笔记-实战篇(黑马视频教程)
  11. 开发跨境电商/外贸商城网站需要考虑的事项
  12. 菜鸟和老鸟都无法避免的问题——未将对象引用设置到对象的实例
  13. 104键键盘 按键码表
  14. 二年级课程表(4月2日-4月8日)
  15. 墨卡托投影原理及瓦片公式推导
  16. 加了尾注怎么添加新页_wps添加有尾注,随后删掉之后空白页怎么也不删掉?求大神帮忙...
  17. CSS mix-blend-mode滤色screen混合模式
  18. webpy使用说明(一)
  19. linux下的ip tunnel workflow
  20. l7sa008b故障代码_2019奥克斯空调最新故障代码查询

热门文章

  1. C# 读取CSV文件
  2. 1NF | 2NF | 3NF的区分以及什么是函数依赖、部分函数依赖、值传递依赖(最详细的讲解1NF、2NF、3NF的关系)
  3. 在Mac上安装Hadoop HA 高可
  4. windows下修改中用户名为英文
  5. zz麦考林(M18.com)多渠道狂奔
  6. 查看MySQL数据库的命令
  7. 100Mhz秒脉冲发生器 vivado
  8. 【时间处理】获取官方节假日数据的api接口,获取指定日期的节假日数据
  9. Word如何自动更新域
  10. tf.nn.leaky_relu()函数