首页 > 其他分享 >springboot中json参数映射

springboot中json参数映射

时间:2023-02-28 10:01:41浏览次数:49  
标签:username springboot 映射 入参 RequestBody json String


文章目录

  • ​​json映射不到实体上​​
  • ​​问题分析​​
  • ​​解决方案​​
  • ​​json映射到String查不到数据​​
  • ​​问题分析​​
  • ​​解决方案​​
  • ​​自动映射入参可以多吗,可以少吗​​

json映射不到实体上

开发中postman发的json映射不到实体上。

问题分析

原来是json等请求,需要加@RequestBody注解。

如果​​content-type​​​是 ​​application/x-www-form-urlcoded​​​ (也就是表单形式,或者是地址传参),那么参数会自动注入,什么都不用加。
如果不是的话,如 ​​​application/json​​​ 或者是 ​​application/xml​​ 等,需要加@RequestBody注解。

解决方案

参数前加上@RequestBody注解即可,代码:

@ResponseBody
@RequestMapping("/add")
public Set<String> add(@RequestBody KVEntity kvEntity){
}

看样子还要继续努力啊。

json映射到String查不到数据

用惯json了,有的时候只需传一个string,也用json,发现查询结果不对。
例如报文如下:

{
"username":"zhangsan"
}

问题分析

后台用String username接收的话,会整个接收。
如下:

// 想要的是这样
username="zhangsan"
// 实际会这样
username="\{\"username\":\"zhangsan\"\}";

解决方案

1、不用json格式,用地址传参,或formdata的格式传递。
2、使用包含username的User对象接收参数。

自动映射入参可以多吗,可以少吗

入参多,对应实体不存在的情况。
这种是可以的。

入参少,这种情况很常见,报文中只填所属的参数。
这种也是可以的。除非有限制入参的某个字段为必填项,那么才会报错。


标签:username,springboot,映射,入参,RequestBody,json,String
From: https://blog.51cto.com/u_7341513/6090178

相关文章

  • 转载:pageOffice插件 springboot实现服务器上Word文档在线打开编辑保存
    pageOffice插件springboot实现服务器上Word文档在线打开编辑保存需求:在oa系统上,想实现在线,服务器上doc,docx文档,在web打开,编辑。编辑后,可以再同步保存到服务器端。......
  • SpringBoot项目结构
    一.总体概述SpringBoot框架简单来说就是一个Web框架,其目的在于快速开发一个Web应用的后端实现主要包括三部分:java文件夹,Resource文件夹,pom.xml二.Java文件夹Co......
  • springboot+mybatis-plus数据库mysql+sybase遇到的一些问题
    我们服务启动时,sybase数据库连接直接创建10个连接。(为什么启动时会创建这么多连接?)有时候可以写入sybase库,大部分写入失败查询sybase库数据可以查出来,没问题尝试的方......
  • SpringCloudAlibaba、SpringCloud、SpringBoot、Spring版本对应关系
    SpringCloudAlibaba版本说明:https://github.com/alibaba/spring-cloud-alibaba/wiki/版本说明最新(SpringBoot3.0以下)示例:SpringCloudAlibabaVersionSpringCloud......
  • npm run 执行多任务的package.json配置
    有时需要在运行npmrun时,执行多个自定义的任务,此时可以使用增加scripts中条目,然后用一个总任务脚本将相关条目用&&串联起来的方式进行。我们知道:在package.json中,scripts里......
  • SpringBoot 搭建微服务初体验
    (SpringBoot搭建微服务初体验)前言大家好,微服务是现在面试中必不可少的一项技能了,掌握微服务,不仅能够加薪升职,还能在面试中,底气十足,不怯场,不怕被压薪资。所以今天就特意......
  • springboot中redis使用和工具
    application.properties#Redis相关配置spring.data.redis.host=localhost#端口spring.data.redis.port=6379#reids数据库索引spring.data.redis.database=0Red......
  • springboot脱包部署
    <plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><configuration>......
  • springboot条件注册Condition注解
    环境识别importorg.springframework.context.annotation.Condition;importorg.springframework.context.annotation.ConditionContext;importorg.springframework.c......
  • FastJson参数
    名称含义备注QuoteFieldNames输出key时是否使用双引号,默认为true UseSingleQuotes使用单引号而不是双引号,默认为false WriteMapN......