springMVC中@RequestParam和@RequestBody注解的用法
springMVC中@RequestParam注解用在Controller层获解析、提取参数,当然你也可以用request.getParameter("name")来获取参数,而@RequestParam注解接收参数有几种不同的写法。
1、test(String name)
像正常的方法接收参数,不带@RequestParam注解。这种写法,如果没有name参数不会报错。
2、test(@RequestParam String name)
带@RequestParam注解。这种写法,name参数为必须,如果没有会报错。
3、test(@RequestParam("userName") String name)
带@RequestParam注解。这种写法,可以对接收的参数进行重命名。即接收到userName改成name。
4、test(@RequestParam(value="userName",request=false) String name)
带@RequestParam注解。这种写法,通过设置request参数来设定参数是否为必须,true为必须,false为非必须。
PS:@RequestBody注解也可以用来获取参数。与@RequestParam不同点在于:
@RequestParam注解通常处理content-type为默认的application/x-www-form-urlcoded的请求。
@RequestBody注解用来处理content-type为application/json或者是application/xml等。
比如:一个json格式的请求参数,且没有参数名,就可以用下面的方式获取。
1、test(@RequestBody String json)
springMVC中@RequestParam和@RequestBody注解的用法的更多相关文章
- springMVC中 @RequestParam和@RequestBody的区别
首先,不可以同时传进@RequestParam和@RequestBody,好像可以传进两个@RequestParam 如果不加@requestparam修饰,相当于 加上@requestparam且各 ...
- springMVC中@RequestParam和@RequestBody的作用
@RequestParam和@RequestBody是什么区别,估计很多人还是不太清楚, 因为一般用@ RequestParam就足够传入参数了,要说他们区别,就需要知道contentType是什么? ...
- 浅谈@RequestMapping @ResponseBody 和 @RequestBody 注解的用法与区别
浅谈@RequestMapping @ResponseBody 和 @RequestBody 注解的用法与区别 Spring 2.5 版本新增了注解功能, 通过注解,代码编写简化了很多:但熟悉注解的使 ...
- SpringMVC中post请求参数注解@requestBody使用问题
一.httpClient发送Post 原文https://www.cnblogs.com/Vdiao/p/5339487.html public static String httpPostWithJ ...
- @RequestMapping、@ResponseBody 和 @RequestBody 注解的用法与区别
背景: 帮助同事解决文件上传的bug(文件上传成功,但是页面提示上传接口异常,数据的确是插入了),从前端layui页面找错误,然后浏览器调试,找了半天无果.layui文件上传格式code返回是数值,后 ...
- @RequestMapping @ResponseBody 和 @RequestBody 注解的用法与区别
1.@RequestMapping 国际惯例先介绍什么是@RequestMapping,@RequestMapping 是一个用来处理请求地址映射的注解,可用于类或方法上.用于类上,表示类中的所有响应 ...
- @PathVariable、@RequestParam、@RequestBody注解
讲解更加详细的参考资料 https://blog.csdn.net/u011410529/article/details/66974974 https://www.cnblogs.com/soul-w ...
- SpringMVC中@RequestParam注解作用
1.不使用@RequestParam 请求参数名必须和形参名称一样 2.使用@RequestParam 请求参数名必须和@RequestParam value属性值一样 请求参数名不必和 ...
- @RequestParam和@RequestBody和@PathVariable用法小结
@RequestParam 使用@RequestParam接收前段参数比较方便,前端传参的URL: url = "${ctx}/main/mm/am/edit?Id=${Id}&na ...
随机推荐
- 如何在嵌入式Linux上开发一个语音通信解决方案
开发一个语音通信解决方案是一个软件项目.既然是软件项目,就要有相应的计划:有多少功能,安排多少软件工程师去做,这些工程师在这一领域的经验如何,是否需要培训,要多长时间做完,中间有几个主要的milest ...
- Redis Sentinel配置小记
Sentinel是一个管理多个redis实例的工具,它可以实现对redis的监控.通知.自动故障转移.sentinel不断的检测redis实例是否可以正常工作,通过API向其他程序报告redis的状态 ...
- 利用JParticles制作粒子
JParticles 2.0发布,打造炫酷的粒子 一. 介绍 JParticles 2.0发布之前叫Particleground.js, 相信有在用的朋友应该不会陌生, 关于1.x的介绍可以看这里 二 ...
- python 最基本的的单例模型的实现及应用
在我们python开发过程很多 ,在很多地方都会用到单例模式,确保数据的唯一性,最简单的单例模式,我们可以模块导入的方式实现,因为导入文件,无论import多少次 都只导入一次模块. 方法一:装饰器 ...
- 数据结构之二叉树(BinaryTree)
导读 二叉树是一种很常见的数据结构,但要注意的是,二叉树并不是树的特殊情况,二叉树与树是两种不一样的数据结构. 目录 一. 二叉树的定义 二.二叉树为何不是特殊的树 三.二叉树的五种基本形态 四.二叉 ...
- flexbox 弹性盒子
flexbox 弹性盒子 1.基本知识 container(容器)属性 flex-direction: row | row-reverse | column | column-reverse 属性决定 ...
- BZOJ 1012: [JSOI2008]最大数maxnumber【线段树单点更新求最值,单调队列,多解】
1012: [JSOI2008]最大数maxnumber Time Limit: 3 Sec Memory Limit: 162 MBSubmit: 10374 Solved: 4535[Subm ...
- POJ1163-The Triangle-动态规划
The Triangle Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 50122 Accepted: 30285 De ...
- IntelliJ IDEA 2017.3下载与安装
大约在2017年暑假的时候知道了IntelliJ IDEA,但是那个时候一心认为有Eclipse就足够用了,然而今天在网上冲浪的时候发现,IntelliJ IDEA是java语言开发的集成环境,这款开 ...
- 从零开始学习前端JAVASCRIPT — 2、JavaScript基础ES5
1:ES5简介 ECMAScript 5.1 (或仅 ES5) 是ECMAScript(基于JavaScript的规范)标准的修正. 与HTML5规范进程本质类似,ES5通过对现有JavaScript ...