fastjson把对象转化成json避免$ref

1. DisableCircularReferenceDetect来禁止循环引用检测:

2. JSON.toJSONString(..., SerializerFeature.DisableCircularReferenceDetect)

3.项目中遇到问题的源代码:

//        查询所有的订单
        @ResponseBody
        @RequestMapping("queryAllOrderList")
        public void queryAllOrderList(HttpServletResponse response){
            List<OrderList> orderLi=orderService.queryAllOrders()
            jo.put("total", orderLi.size());
            jo.put("rows", orderLi);
            try {
                response.getWriter().append(JSON.toJSONString(jo, SerializerFeature.DisableCircularReferenceDetect));
            } catch (IOException e) {
                e.printStackTrace();
            }
        }

3. 引用是通过"$ref"来表示的

引用 描述
"$ref":".." 上一级
"$ref":"@" 当前对象,也就是自引用
"$ref":"$" 根对象
"$ref":"$.children.0" 基于路径的引用,相当于 root.getChildren().get(0)
时间: 2024-11-04 16:10:04

fastjson把对象转化成json避免$ref的相关文章

RestTemplate传输值为null的属性、利用FastJson将属性中有空值null的对象转化成Json字符串

一个pojo类: import lombok.Data; @Data public class Friend { private String name; private int age; private String sex; } 初始化一个Friend对象,该对象属性为"sex"对应的值设置为null: public class FriendTest { private Friend friend = new Friend(); @Before public void init()

将class类对象转化成json的数据格式

直接上代码: JSONObject的的使用需要导入json-lib-2.4-jdk15.jar包,下载地址:http://mvnrepository.com/artifact/net.sf.json-lib/json-lib/2.4: 1 package test; 2 3 import net.sf.json.JSONObject; 4 import testspringmysql.User; 5 6 public class TestClass 7 { 8 9 public static v

.Net使用Newtonsoft.Json.dll(JSON.NET)对象序列化成json、反序列化json示例教程

JSON作为一种轻量级的数据交换格式,简单灵活,被很多系统用来数据交互,作为一名.NET开发人员,JSON.NET无疑是最好的序列化框架,支持XML和JSON序列化,高性能,免费开源,支持LINQ查询.目前已被微软集成于webapi框架之中,因此,熟练掌握JSON.NET相当重要,这篇文章是零度参考官网整理的示例,通过这些示例,可以全面了解JSON.NET提供的功能. Newtonsoft.Json的地址: 官网:http://json.codeplex.com/ 源码地址:https://gi

C#将对象序列化成JSON字符串

public string GetJsonString() { List<Product> products = new List<Product>(){ new Product(){Name="苹果",Price=5.5}, new Product(){Name="橘子",Price=2.5}, new Product(){Name="干柿子",Price=16.00} }; ProductList productlis

在.net core 的webapi项目中将对象序列化成json

问题:vs2017 15.7.6创建一个基于.net core 2.1的webapi项目,默认生成的控制器继承自ControllerBase类 在此情况下无法使用Json()方法 将一个对象转成json 解决方案:将控制器继承的类 改为Controller 此时可以使用json()方法 将对象直接转成json. 原文地址:https://www.cnblogs.com/wholeworld/p/9701144.html

gson之将对象转化成json字符串的方法

public class GsonUtil { /** * 将object对象转成json格式字符串 */ public static String toJson(Object object) { GsonBuilder gsonBuilder = new GsonBuilder(); gsonBuilder.setPrettyPrinting(); Gson gson = gsonBuilder.create(); return gson.toJson(object); } } 测试工具类,将

通过fastjson将一个对象序列化为json,同时加入指定的序列化逻辑

主函数: import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.serializer.ValueFilter; import com.google.common.base.Preconditions; public class xiaomi { public static void main(String[] args) { A a = new A(); String json =ok.object2Json(a); Syst

ObjC 利用反射和KVC实现嵌套对象序列化成JSON数据

原理: 0.创建一个新的可变字典:NSMutableDictionary 1.采用class_copyPropertyList函数遍历对象的属性 2.property_getName获取属性名,valueForKey获取属性内容. 3.判断该属性内容的Class: (1)假如为基础类型(NSString,NSNumber,NSNull),则直接返回,跳转到4操作. (2)假如为数组类型,先创建新的可变数组,再遍历旧数组中的内容,判断内容类型,重复3进行递归操作,直到找到基础类型.  通过setO

把JavaScript对象转化成JSON对象

js => jsonvar jsonVar = {key: value}var jsonString = JSON.stringify(jsonVar)  //将JS对象转换为JSON字符串var jsonObject = JSON.parse(jsonString)  //将JSON字符串转换为JSON对象 js => arrayvar jsonVar = [value1,..,value]var jsonString = JSON.stringify(jsonVar)  //将JS数组转换