第一种情况:

第二种情况:

首先看看你的JSONObject或JSONArray的引用有没有Getter()和Setter()方法,这个必须要加上

问题:
两张表双向多对一、一对多时。响应给后台使,出现此错误
分析: 双向关系,生成json的时候是相互调用,需要有一方忽略对方
要完成的功能时,一方能够找到多方,多方反过来又能找到一方。所以响应给前台时F12-查看网络-找到post请求,然后分别查看参数和响应会发现,参数没有问题,而响应就会报以上错误。点击json数据进去查看就会发现很多数据,响应进入了死循环。(一方找多方,找了很多,然后反过来多方又去找一方找了很多,最后又循环去找)
解决:
在双向的两方的其中任何一方关联字段上配置@JsonIgnore这个配置就可以了。
实例说明:
单据是组合关系。也就是所谓的强聚合。(双向的一对多、多对一)。
两者都不能抛弃另一方。所以要配置最强的级联(cascade = CascadeType.ALL),还要有孤儿删除(orphanRemoval = true)。还有:由于一对多性能差,所以一方要放弃维护关系,让多方维护(mappedBy = “一方的字段”)
实例

//采购明细和采购单多对一关系
@ManyToOne(fetch = FetchType.LAZY,optional = false)
@JoinColumn(name = "bill_id")//表中的采购单外键
@JsonIgnore //生成json的时候忽略这个属性
private Purchasebill billId;

单据采购明细:

// 一般组合关系使用List (采购单和采购明细单是组合关系:双向多对一,一对多)
@OneToMany(cascade = CascadeType.ALL, mappedBy = "billId", fetch = FetchType.LAZY, orphanRemoval = true)
private List<Purchasebillitem> items = new ArrayList<Purchasebillitem>();

后台传给前端字符串为null或解析JSON字符错误——SyntaxError: JSON.parse: unterminated string literal at line 1 column 9018638 of the JSON data的更多相关文章

  1. xss-跨站脚本攻击-后台传给前端的html标签安全显示

    作用 后台拼接的html字符串传到前端,默认是不安全的,需要告诉前端这个字符串是安全的,可以正常显示html标签. 知识点 1.定义 2 3 <script>      获取session ...

  2. [Swift]LeetCode387. 字符串中的第一个唯一字符 | First Unique Character in a String

    Given a string, find the first non-repeating character in it and return it's index. If it doesn't ex ...

  3. 分公司下拉框赋值-从后台传到前端jsp

    我的旧代码  List<MetaBranchCfg> list = metaBranchCfgBO.queryAllBranchList();  request.setAttribute( ...

  4. LeetCode 387: 字符串中的第一个唯一字符 First Unique Character in a String

    题目: 给定一个字符串,找到它的第一个不重复的字符,并返回它的索引.如果不存在,则返回 -1. Given a string, find the first non-repeating charact ...

  5. fastTime从后台传过来显示格式的处理

    1.可以在控制台用syso查看 QuestionFeedbackView qfv = on_LineManageService.getBringupHead(projectNo);//qfv是一个内含 ...

  6. 修改后台传过来的json数据中对象的属性

    前言 今天在实习中遇到的一个小问题,后端传过来的一个json数据结构,但是对象中的属性名跟我需要的不一样(因为我是渲染echarts中的数据,属性名要一样) 这是后台传过来的数据: 需求是我需要把属性 ...

  7. 4. JSON字符串是如何被解析的?JsonParser了解一下

    公司不是你家,领导不是你妈.本文已被 https://www.yourbatman.cn 收录,里面一并有Spring技术栈.MyBatis.JVM.中间件等小而美的专栏供以免费学习.关注公众号[BA ...

  8. json.loads()的字符串中为单引号引发的错误

    如下错误属于弱智错误,但是错的原因让我无语,所以记录一下 str2="{'card':6217001650004184441}"print(json.loads(str2)) Tr ...

  9. asp.net MVC 框架中控制器里使用Newtonsoft.Json对前端传过来的字符串进行解析

    下面我用一个实例来和大家分享一下我的经验,asp.net MVC 框架中控制器里使用Newtonsoft.Json对前端传过来的字符串进行解析. using Newtonsoft.Json; usin ...

随机推荐

  1. s3c2440裸机-内存控制器(二、不同位宽外设与CPU地址总线的连接)

    不同位宽设备的连接 black 我们先看一下2440芯片手册上外设rom是如何与CPU地址总线连接的. 8bit rom与CPU地址线的连接 8bit*2 rom与CPU地址线的连接 8bit*4 r ...

  2. python 1 默写用递归实现无限极分类 2 默写用树实现无限极分类

    data=[ {"cat_id":3,"name":"沙河","parent_id":1}, {"cat_id ...

  3. Java Web 学习(7) —— Spring MVC 之国际化

    Spring MVC 之国际化 i18n 与 l10n internationalization:国际化,以 i 开头,以 n 结尾,中间 18 个字母,简称 i18n. localization:本 ...

  4. python第二次作业-titanic数据库练习

    一.读入titanic.xlsx文件,按照教材示例步骤,完成数据清洗. titanic数据集包含11个特征,分别是: Survived:0代表死亡,1代表存活Pclass:乘客所持票类,有三种值(1, ...

  5. shell通配符, 变量, shell作用域

    1. 指定格式输出当前时间: echo `date +%Y%m%d`  # 注意使用反引号, +号后面不要有空格 反引号中的东西会被当做命令来执行, 并输出执行的结果 2. $uid用于判断当前是否是 ...

  6. Spring Batch基本概念

    Spring batch主要有以下部分组成: JobRepository     用来注册job的容器 JobLauncher             用来启动Job的接口 Job           ...

  7. x86-64数据格式、通用寄存器与操作数格式

    x86-64数据格式.通用寄存器与操作数格式 数据格式 ​ Intel用术语"字(word)"表示16位数据类型,32位为"双字(double words)", ...

  8. OpenvSwitch系列之五 网桥特性功能配置

    Open vSwitch系列之一 Open vSwitch诞生 Open vSwitch系列之二 安装指定版本ovs Open vSwitch系列之三 ovs-vsctl命令使用 Open vSwit ...

  9. angularjs中ng-class常用写法,三元表达式、评估表达式与对象写法

     壹 ❀ 引 ng-class可以说在angularjs样式开发中使用频率特别高了,这不我想利用ng-class的三元运算符的写法来定义一个样式,结果怎么都想不起来正确写法,恼羞成怒还是整理一遍吧,那 ...

  10. Android Monkey的用法(一)

      Monkey 简介 ü  Monkey 是一个命令行工具,可以运行在 Android 模拟器里或真实设备中.它可以向系统发送伪随机(pseudo-random)的用户事件流(如按键输入.触摸屏输入 ...