• ajax提交集合或者数组使用fastjson注意事项总结(fastjson解决循环引用和重复引用)


     

     1 List<Object> list = new ArrayList<>();
     2         Map<String,Object> m1=new HashMap<>();
     3         m1.put("a", 1);
     4         Map<String,Object> m2=new HashMap<>();
     5         m1.put("a", 1);
     6         m2.put("b", 2);
     7         list.add(m1);
     8         list.add(m1);
     9         System.out.println(JSON.toJSONString(list));
    10         //重复对象引用
    11         List<Object> jsonString = (List<Object>) JSON.parse("[{"a":1},{"$ref":"$[0]"}]");
    12         System.out.println(JSON.toJSONString(jsonString, SerializerFeature.DisableCircularReferenceDetect));
    13          JSONObject jsonObject=new JSONObject();
    14         List<Map> r1 = jsonObject.parseObject(JSON.toJSONString(jsonString, SerializerFeature.DisableCircularReferenceDetect),new TypeReference<List<Map>>() {});
    15          System.out.println(JSON.toJSONString(jsonString, SerializerFeature.DisableCircularReferenceDetect));

    排序

     改变属性名

    fastjson处理日期的API很简单,例如:

    JSON.toJSONStringWithDateFormat(date, "yyyy-MM-dd HH:mm:ss.SSS");
    1
    使用ISO-8601日期格式

    JSON.toJSONString(obj, SerializerFeature.UseISO8601DateFormat);
    1
    全局修改日期格式

    JSON.DEFFAULT_DATE_FORMAT = "yyyy-MM-dd";
    JSON.toJSONString(obj, SerializerFeature.WriteDateUseDateFormat);
    ————————————————
    版权声明:本文为CSDN博主「挖坑埋你」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/liupeifeng3514/article/details/79166566

    -------------------------------------------------------华丽分割线------------------------------------------------------------- 

    SpringMVC环境中,@RequestBody接收的是一个Json对象的字符串,而不是一个Json对象。
    然而在ajax请求往往传的都是Json对象,用 JSON.stringify(data)的方式就能将对象变成字符串。
    同时ajax请求的时候也要指定dataType: "json",contentType:"application/json" 这样就可以轻易的将一个对象或者List传到Java端!

    ---------------------------------------------------------华丽分割线----------------------------------------------------- 

    ------------------------------------------------------------华丽分割线--------------------------------------------------------- 

    -------------------------------------------------------------------------------------------------------------

    没转码前提交直接报错

    转码后提交直接

    转码后提交可以进去controller

     

     

  • 相关阅读:
    ORA01093: ALTER DATABASE CLOSE only permitted with no sessions connected DG开启MRP失败
    计算机专业自学路线
    asp.net(C#) 中文乱码
    k8s的搭建1.18(二)
    k8s的搭建1.15(一)
    loguru多进程切分日志异常分析
    Fresh ideas about new businesses
    Python进阶3.2再论静态方法和类方法
    Python进阶3.3多继承以及MRO顺序
    GO学习之介绍安装
  • 原文地址:https://www.cnblogs.com/java-llp/p/10876372.html
Copyright © 2020-2023  润新知