@RequestMapping(value=, method=, consumes=, produces=, params=, headers=)

2024-05-01 12:32

本文主要是介绍@RequestMapping(value=, method=, consumes=, produces=, params=, headers=),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

用来处理请求地址映射,可以用于类或方法上。
用于类上表示类中的所有响应请求的方法都是以该地址作为父路径。

@RequestMapping有六个属性。

1、 value, method;

    String[] value() default {};RequestMethod[] method() default {};

value:代表请求的映射路径;

译文:
这个注解代表主要的映射,
它支持/myPath.do 这样的Servlet环境中的 URIS格式,
它也支持Ant风格的路径形式如:/mypath/*.do,
在方法级别上,也支持相对路径形式如: edit.do,
在类接口注解级别和方法级别上都支持占位符形式如: /${connect}

method: 指定请求的method类型

译文:
映射到HTTP请求的方法,用来缩小主映射。
支持GET, HEAD, POST, PUT, OPTIONS, DELETE, PATCH, TRACE 方法。
支持类级别和方法级别。
支持Servlet环境和Portlet2.0环境

2、 consumes,produces;

String[] consumes() default {};
String[] produces() default {};

consumes: 指定处理请求的提交内容类型(Content-Type)。

译文
映射请求的可生产媒体类型,用来缩小主映射范围。
这个格式可以是单媒体类型,也可以是一系列媒体类型。如:
consumes = “text/plain”
consumes = {“text/plain”, application/*}
表达式里可以用!,如 consumes = “!text/plain”
支持类类型和方法类型,如果类型类有,则会覆盖所有方法上的consumes。

produces: 指定返回的内容类型,仅当request请求头中的(Accept)类型中包含该指定类型才返回;

译文
同上

3、 params,headers;

params: 指定request中必须包含某些参数值是,才让该方法处理。

译文

@RequestMapping(value = "/pets/{petId}", method = RequestMethod.GET, params="myParam=myValue")  

headers: 指定request中必须包含某些指定头信息,才能让该方法处理请求。

译文
映射请求的头,用来缩小主映射范围。
在任何环境中都是一样的格式如:My-Header = “myValue”。
他支持!写法和*符号,例子:
@RequestMapping(value =”/something”, headers = “content-type=text/*”)
它将会匹配有Content-Type的请求,并且值为text/html 或 text/plain 等。
支持类类型和方法类型,如果用在类类型上, 所有的方法类型映射将会继承类类型的头限制。
@see org.springframework.http.MediaType

这篇关于@RequestMapping(value=, method=, consumes=, produces=, params=, headers=)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/951695

相关文章

模版方法模式template method

学习笔记,原文链接 https://refactoringguru.cn/design-patterns/template-method 超类中定义了一个算法的框架, 允许子类在不修改结构的情况下重写算法的特定步骤。 上层接口有默认实现的方法和子类需要自己实现的方法

为 Key-Value 数据库实现MVCC 事务

ACID是软件领域使用最广泛的技术之一,它是关系数据库的基石,是企业级中间件不可或缺的部分,但通常通过黑盒的方式提供。但是在许多情况下,这种古老的事务方式已经不能够适应现代大规模系统和NoSQL数据库的需要了,现代系统要求更高的性能要求,更大的数据量,更高的可用性。在这种情况下,传统的事务模型被定制的事务或者半事务模型所取代,而在这些模型中事务性并不像以往那样被看重。   在本文中我们会讨论一

兔子--The method setLatestEventInfo(Context, CharSequence, CharSequence, PendingIntent) from the type

notification.setLatestEventInfo(context, title, message, pendingIntent);     不建议使用 低于API Level 11版本,也就是Android 2.3.3以下的系统中,setLatestEventInfo()函数是唯一的实现方法。  Intent  intent = new Intent(

兔子-(PHP 5.3 and above) Please set 'request_order' ini value to include C,G and P (recommended: 'CGP'

由于在PHP最新的版本中增加了一个配置项目“request_order”,默认值为“GP”,这个存在一定的安全风险。这里我们建议用户将配置更改为“CGP” 可以在php的安装目录下找到php.ini配置目录,找到下面选项: request_order = "GP"  更改为 request_order = "CGP"   重启服务器后即可。 此

MySql 1264 - Out of range value for column 异常

前段时间操作数据库,本是一个很简单的修改语句,却报了  1264 - Out of range value for column字段类型官网  当时一看懵逼了,网上很多都说是配置的问题,需要修改my.ini文件,这个方式我没有试过,我想肯定还有其它方法,经过慢慢排 查发现表里的字段为 decimal(10,3) ,这说明小数点前只有7位,保留了3位小数点,而值在小数点前却有8位,这就导致了错误

【上】java获取requestMapping上所有注解功能实现及取匿名注释类的值及 class com.sun.proxy.$Proxy140 转换出错

java获取requestMapping上所有注解功能实现及取匿名注释类的值及 class com.sun.proxy.$Proxy140 转换出错 1,多人相当然以为类似对象一样直接强转下就可以,结果迎来的是class com.sun.proxy.$Proxy140转换出错【想法很勇敢,现实很骨感】 //Class<A> operatorMappingAnnotationType// 错误

浅谈params修饰符

C#中,使用params关键字来支持参数数组的使用。params关键字可以把可变数量的相同类型的参数作为单个逻辑参数传递给方法、同样地,如果调用者为调用方法传入强类型数组或者以逗号分隔的参数项列表,params修饰符标记的参数就可以被处理。 为了更加直观,给出下面的例子,例子中,我们分别通过数组方式、参数项列表方式来调用求和函数。可以看到,传入零个参数时,也可以被处理。当以参数项列表方式调用方法时

Windows用户取消共享文件夹密码方法(Method for Windows Users to Cancel Shared Folder Password)

Windows用户取消访问共享文件夹密码方法 💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:Linux运维老纪的首页,持续学习,不断总结,共同进步,活到老学到老 导航剑指大厂系列:全面总结 运维核心技术:系统基础、数据库、网路技术、系统安全、自动化运维、容器技术、监

python+requests实现接口测试 - get与post请求使用( params

原 http://www.mamicode.com/info-detail-1755093.html 简介:Requests 是用Python语言编写,基于 urllib,采用 Apache2 Licensed 开源协议的 HTTP 库。它比 urllib 更加方便,可以节约我们大量的工作,完全满足 HTTP 测试需求。Requests 的哲学是以 PEP 20 的习语为中心开发

iOS——方法交换Method Swizzing

什么是方法交换 Method Swizzing是发生在运行时的,主要用于在运行时将两个Method进行交换,我们可以将Method Swizzling代码写到任何地方,但是只有在这段Method Swilzzling代码执行完毕之后互换才起作用。 利用Objective-C Runtimee的动态绑定特性,将一个方法的实现与另一个方法的实现进行交换。交换两个方法的实现一般写在分类的load方法里