想看问题直接解决方式,直接拉到博文底部.

Spring的controller在接收前端传参的时候如果参数使用@RequestBody标注的时候

@RequestBody

则会把前端参数转为JSON的形式,当然内部是怎么实现的像我这种菜鸡目前肯定是不懂的.

但是有的时候会遇到一种情况,比如说JSON嵌套的时候之前我想的是DTO中包含一个String类型的参数,因为Json不就相当于一个字符串嘛

整理了一下,前端传来的参数这样子

{"Code": "001","state": 0,"content": "{"name": "小明","age": 18}"
}

但是实际上面的JSON是一个错误的json,正常传参的时候根本就不能把Json写成下面的格式

{"Code": "001","state": 0,"content": {"name": "小明","age": 18}
}

正常的json格式应该是上面这个样子的,但是这个时候我就比较迷惑了,既然不能接受字符串形式,这里的参数该怎么弄呢?

根据业务逻辑,这里面可以在DTO,封装一个需要的实体类,比如说可以放置一个User的参数

但是有的时候,我们会发现我们是根本不知道里面实体类的代码的,甚至说这个实体类里面还会嵌套着更多的别的实体类

所以我选择采用Object当参数

       /*** 信息json串*/private Object content;

之后呢,在保存数据的时候可以通过下面的代码,将Json转为String存入数据库

            Vo vo= new Vo();JSONObject jsonObject = JSONObject.fromObject(applyRecordDto.getContent());String s = jsonObject.toString();vo.setContent(s);

大功告成,大体上解决方法就是上面的凉行代码,当然你也可以选择别的方式,毕竟能解决问题的方式都好

转载于:https://www.cnblogs.com/shenyanrushang/p/10852468.html

Java如何接收前端传来的多层嵌套的复杂json串相关推荐

  1. java后端接收前端传来的String数组

    我们来看下面一段代码,我们需要接收前端传来的String字符数组:我们来模拟下错误传参: @PostMapping("/getStrArray")public ResponseMe ...

  2. SpringBoot接收前端传来的json数据

    当前端传来json数据时,后端有多种方式接收 前端json数据: {id:121, //数字name:"lhj", //字符串scoreList:[ //对象{Java:95}, ...

  3. php怎么传json数据_php怎么接收前端传来的json数据

    php怎么接收前端传来的json数据php 如何接收前端传来的json数据 前端用JQ 生成一个有字段名和值格式的键值对 的JSON 格式的字串 转码后 提交给后台的PHP 处理 代码如下 json_ ...

  4. 如何接收前端传来的json数据

    我是小康小白,一个平平无奇的Java小白.热爱有趣的文字,生活和远方. 从前端获取json格式包的数据,而不是仅仅通过参数来获得 1.第一种使用使用IOUtils的读取包方式 但这种方法需要jar包 ...

  5. java接收前端传来的日期,格式化后录入数据库

    前端页面input 标签的类型是date类型 实体类为Date 类型 加上 @JsonFormat ,可以格式化成不同的日期格式 这是前台查询到数据库的时间 如果前后端传的数据都是json格式,那么后 ...

  6. Java后端接收前端post方式传来的表单数据

    可以通过HttpServletRequest和@RequestParam注解来获取post提交的表单数据 1.使用HttpServletRequest来获取 @PostMapping(value = ...

  7. java怎么接收前端请求_前端json post 请求 后端怎么接收

    前端提交 POST /api/test HTTP/1.1 Host: 192.168.135.69:81 Connection: keep-alive Content-Length: 18 Origi ...

  8. 【Java 后端接收前端的富文本数据,其中标签样式数据丢失解决】

    [问题处理记录] 问题 前端json字符串传值富文本格式的字段给我,字符串参数如下: "<p data-we-empty-p="" style="text ...

  9. Java 后端接收前端的富文本参数,传到后台后标签样式数据丢失

    问题描述: 前端传参的时候,某个参数中是富文本格式,格式如下: {   "id": "698002e34cb64156ade62a073699f5d9", &q ...

最新文章

  1. php 中文 过长 省略号,css实现文字过长显示省略号
  2. 视频压缩编码 gop(Group of Pictures)(I帧间隔)的概念、IDR、I帧(关键帧,intra picture)、P帧、B帧、帧内压缩、帧间压缩、pts(显示时间)、dts(解码时间)
  3. 华南师范大学计算机学院重修,为什么说本科绩点低毁一生 大学重修可以刷绩点吗...
  4. 详解Python中的JSON以及在Python中使用JSON
  5. 解决后退,清空验证码(其它文本框保留)
  6. 解决element-ui table 表格排列错位问题
  7. 数的计数【Noip2001】
  8. [Python] 进制转换
  9. 如何在matlab中建立水箱模型_水箱
  10. 开源自己的一个小android项目(美女撕衣服游戏)
  11. 欧姆龙新​​ 3D AOI 系统中的软件和人工智能
  12. OA系统如何助力企业行政管理?
  13. 第四章 函数式编程(Lambda表达式Stream流)
  14. CAD图纸电子签名应用
  15. 2017 多校4 Wavel Sequence
  16. 微软的“胡萝卜”会比“大棒”更有效吗
  17. 关键点检测方法、人体姿态估计
  18. BCI Competition 2008 – Graz dataset A个人翻译(附MATLAB安装BioSig)
  19. MES系统中常见的数据采集方法
  20. 约瑟夫环问题(数学递推法)

热门文章

  1. 一步一步的写出你自己的makefile文件
  2. 【CyberSecurityLearning 37】网络安全常用Linux系统命令以及 源码包的安装过程
  3. 编写图形界面程序,显示一个红色反弹球的程序,当该球撞击Applet边框时,它应从边框弹回并以相反方向45°运动。
  4. 白话详细解读(一)-----GoogLeNet(Inception V1-Inception V3)
  5. 从思维导图学习操作系统(二)
  6. STM32开发 -- ADC详解
  7. linux查看磁盘挂载的三种方法
  8. data spring 指定时区_Spring 框架基础(05):Mvc架构模式,执行流程详解
  9. android 单例存储,Android 单例在内存中存储数据
  10. endnote使用经验总结