springboot如何接收application/x-www-form-urlencoded类型的请求


Posted in Java/Android onNovember 02, 2021

请求数据

  • id:1
  • roleName:admin
  • roleDes:拥有admin权限

Controller几种处理方式

第一种

@ApiOperation("查询用户")
    @PostMapping("/detailByParam")
    public void detailByParam(@RequestParam (value = "id") Integer id,@RequestParam(value = "roleName") String roleName,@RequestParam(value = "roleDes") String roleDes) {
     System.out.println(">>>id="+id+",roleName="+roleName+",roleDes="+roleDes);
 }

打印信息:

>>>id=1,roleName=admin,roleDes=拥有admin权限

第二种

@ApiOperation("查询用户")
    @PostMapping("/detailByParam")
    public void detailByParam(@RequestParam Map<String, String> params) {
        System.out.println(">>>id="+params.get("id")+",roleName="+params.get("roleName")+",roleDes="+params.get("roleDes"));
    }

打印信息:

>>>id=1,roleName=admin,roleDes=拥有admin权限

第三种

@ApiOperation("查询用户")
    @PostMapping("/detailByParam")
    public void detailByParam(@RequestBody String params) {
        System.out.println(">>>"+params);
    }

打印信息:

>>>id=1&roleName=admin&roleDes=%E6%8B%A5%E6%9C%89admin%E6%9D%83%E9%99%90

第四种

@ApiOperation("查询用户")
    @PostMapping("/detailByParam")
    public void detailByParam(@RequestBody GetRoleParam getRoleParam) {
        System.out.println(">>>"+getRoleParam); 
    }

返回错误信息:

“Content type ‘application/x-www-form-urlencoded;charset=UTF-8' not supported”

SpringMVC application/x-www-form-urlencoded接收方式测试

前提:为了便于理解

  • 类全部使用@Controller,不使用RestController
  • 方法使用@RequestMapping
  • postman都是如下请求

springboot如何接收application/x-www-form-urlencoded类型的请求

1.参数前不加注解

1.1 request

springboot如何接收application/x-www-form-urlencoded类型的请求

springboot如何接收application/x-www-form-urlencoded类型的请求

成功!

1.2 map

springboot如何接收application/x-www-form-urlencoded类型的请求

springboot如何接收application/x-www-form-urlencoded类型的请求

失败!

1.3 pojo

springboot如何接收application/x-www-form-urlencoded类型的请求

springboot如何接收application/x-www-form-urlencoded类型的请求

springboot如何接收application/x-www-form-urlencoded类型的请求

成功!

2.参数前添加@RequestParam

2.1 request

springboot如何接收application/x-www-form-urlencoded类型的请求

springboot如何接收application/x-www-form-urlencoded类型的请求

失败!

2.2 map

springboot如何接收application/x-www-form-urlencoded类型的请求

成功!

2.3 poji

springboot如何接收application/x-www-form-urlencoded类型的请求

springboot如何接收application/x-www-form-urlencoded类型的请求

springboot如何接收application/x-www-form-urlencoded类型的请求

失败!

3.参数前添加@RequestBody

3.1 request

springboot如何接收application/x-www-form-urlencoded类型的请求

springboot如何接收application/x-www-form-urlencoded类型的请求

失败!

3.2 map

springboot如何接收application/x-www-form-urlencoded类型的请求

springboot如何接收application/x-www-form-urlencoded类型的请求

失败!

3.3 pojo

springboot如何接收application/x-www-form-urlencoded类型的请求

springboot如何接收application/x-www-form-urlencoded类型的请求

失败!

小结一下

 

Request

Map

Pojo

不加注解

×

@RequestParam

×

×

@RequestBody

×

×

×

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Java/Android 相关文章推荐
SpringBoot生成License的实现示例
Jun 16 Java/Android
Spring整合Mybatis的全过程
Jun 28 Java/Android
死磕 java同步系列之synchronized解析
Jun 28 Java/Android
使用Springboot实现健身房管理系统
Jul 01 Java/Android
SpringBoot工程下使用OpenFeign的坑及解决
Jul 02 Java/Android
JavaWeb 入门:Hello Servlet
Jul 16 Java/Android
spring boot中nativeQuery的用法
Jul 26 Java/Android
IDEA2021.2配置docker如何将springboot项目打成镜像一键发布部署
Sep 25 Java/Android
Java异常处理try catch的基本用法
Dec 06 Java/Android
java高级用法JNA强大的Memory和Pointer
Apr 19 Java/Android
详解Flutter自定义应用程序内键盘的实现方法
Jun 14 Java/Android
java获取一个文本文件的编码(格式)信息
Sep 23 Java/Android
Java 在生活中的 10 大应用
Nov 02 #Java/Android
使用Spring处理x-www-form-urlencoded方式
Nov 02 #Java/Android
Java 实现限流器处理Rest接口请求详解流程
Java8中接口的新特性使用指南
Nov 01 #Java/Android
Spring中的使用@Async异步调用方法
Nov 01 #Java/Android
MyBatis自定义SQL拦截器示例详解
Oct 24 #Java/Android
java多态注意项小结
You might like
PHP开发的一些注意点总结
2010/10/12 PHP
PHP图片处理类 phpThumb参数用法介绍
2012/03/11 PHP
图文介绍PHP添加Redis模块及连接
2015/07/28 PHP
php遍历解析xml字符串的方法
2016/05/05 PHP
PHP实时统计中文字数和区别
2019/02/28 PHP
jquery获取被勾选的checked(选中)的那一行的3列和4列的值
2013/07/04 Javascript
浏览器兼容console对象的简要解决方案分享
2013/10/24 Javascript
通过JQuery将DIV的滚动条滚动到指定的位置方便自动定位
2014/05/05 Javascript
node.js中的buffer.toJSON方法使用说明
2014/12/14 Javascript
JS动态添加选项案例分析
2016/10/17 Javascript
jquery实现input框获取焦点的方法
2017/02/06 Javascript
@ResponseBody 和 @RequestBody 注解的区别
2017/03/08 Javascript
vue 1.x 交互实现仿百度下拉列表示例
2017/10/21 Javascript
Vue.js中关于侦听器(watch)的高级用法示例
2018/05/02 Javascript
vue中选项卡点击切换且能滑动切换功能的实现代码
2018/11/25 Javascript
关于Node.js中频繁修改代码重启服务器的问题
2020/10/15 Javascript
Python使用xlrd模块操作Excel数据导入的方法
2015/05/26 Python
python装饰器与递归算法详解
2016/02/18 Python
Python中关于Sequence切片的下标问题详解
2017/06/15 Python
python中使用xlrd读excel使用xlwt写excel的实例代码
2018/01/31 Python
django反向解析和正向解析的方式
2018/06/05 Python
python 实现求解字符串集的最长公共前缀方法
2018/07/20 Python
推荐10款最受Python开发者欢迎的Python IDE
2018/09/16 Python
对Python3之进程池与回调函数的实例详解
2019/01/22 Python
Python给图像添加噪声具体操作
2019/03/03 Python
简单了解Pandas缺失值处理方法
2019/11/16 Python
关于Numpy中的行向量和列向量详解
2019/11/30 Python
怀俄明州飞钓:Platte River Fly Shop
2017/12/28 全球购物
Hawes & Curtis澳大利亚官网:英国经典服饰品牌
2018/10/29 全球购物
Feelunique美国:欧洲大型的在线美妆零售电商
2018/11/04 全球购物
为什么UNION ALL比UNION快
2016/03/17 面试题
计算机专业自我鉴定
2013/10/15 职场文书
小学生感恩父母演讲稿
2014/08/28 职场文书
学习委员竞选稿
2015/11/20 职场文书
两行代码解决Jupyter Notebook中文不能显示的问题
2021/04/24 Python
python自然语言处理之字典树知识总结
2021/04/25 Python