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 相关文章推荐
Feign调用传输文件异常的解决
Jun 24 Java/Android
详解Java分布式事务的 6 种解决方案
Jun 26 Java/Android
Springboot使用Spring Data JPA实现数据库操作
Jun 30 Java/Android
JavaWeb Servlet实现网页登录功能
Jul 04 Java/Android
springboot集成springCloud中gateway时启动报错的解决
Jul 16 Java/Android
Java获取e.printStackTrace()打印的信息方式
Aug 07 Java/Android
RestTemplate如何通过HTTP Basic Auth认证示例说明
Mar 17 Java/Android
springboot 自定义配置 解决Boolean属性不生效
Mar 18 Java/Android
SpringCloud Feign请求头删除修改的操作代码
Mar 20 Java/Android
Spring Boot项目传参校验的最佳实践指南
Apr 05 Java/Android
Java十分钟精通进阶适配器模式
Apr 06 Java/Android
Elasticsearch 配置详解
Apr 19 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开发中常用的8个小技巧
2008/08/27 PHP
PHP中操作ini配置文件的方法
2013/04/25 PHP
基于preg_match_all采集后数据处理的一点心得笔记(编码转换和正则匹配)
2014/01/31 PHP
php 如何获取文件的后缀名
2016/06/05 PHP
JQuery困惑—包装集 DOM节点
2009/10/16 Javascript
对字符串进行HTML编码和解码的JavaScript函数
2010/02/01 Javascript
将两个div左右并列显示并实现点击标题切换内容
2013/10/22 Javascript
iframe的onreadystatechange事件在firefox下的使用
2014/04/16 Javascript
js加入收藏夹代码(兼容ie/ff/op)
2014/05/16 Javascript
Bootstrap每天必学之基础排版
2015/11/20 Javascript
学习Angular中作用域需要注意的坑
2016/08/17 Javascript
AngularJS递归指令实现Tree View效果示例
2016/11/07 Javascript
jQuery Validate让普通按钮触发表单验证的方法
2016/12/15 Javascript
Node.js通过身份证号验证年龄、出生日期与性别方法示例
2017/03/09 Javascript
使用ES6语法重构React代码详解
2017/05/09 Javascript
ES6 中可以提升幸福度的小功能
2018/08/06 Javascript
jQuery轻量级表单模型验证插件
2018/10/15 jQuery
js字符串倒序的实例代码
2018/11/30 Javascript
在vue中使用vuex,修改state的值示例
2019/11/08 Javascript
[01:02:20]Mineski vs TNC 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
[54:09]RNG vs Liquid 2019国际邀请赛淘汰赛 败者组 BO3 第一场 8.23
2019/09/05 DOTA
跟老齐学Python之画圈还不简单吗?
2014/09/20 Python
在Python中使用swapCase()方法转换大小写的教程
2015/05/20 Python
Python抽象类的新写法
2015/06/18 Python
Python实现读写INI配置文件的方法示例
2018/06/09 Python
python中将zip压缩包转为gz.tar的方法
2018/10/18 Python
python装饰器原理与用法深入详解
2019/12/19 Python
PyCharm永久激活方式(推荐)
2020/09/22 Python
Python基于httpx模块实现发送请求
2020/07/07 Python
python实现每天自动签到领积分的示例代码
2020/08/18 Python
荣耀俄罗斯官网:HONOR俄罗斯
2020/10/31 全球购物
人事部岗位职责范本
2014/03/05 职场文书
2015商场元旦促销活动策划方案
2014/12/09 职场文书
小学校长开学致辞
2015/07/29 职场文书
2016年第十四个公民道德宣传日活动总
2016/04/01 职场文书
分享提高 Python 代码的可读性的技巧
2022/03/03 Python