zoukankan      html  css  js  c++  java
  • 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

     

     

  • 相关阅读:
    Java String.format 方法使用介绍
    Android获取SD卡中选中图片的路径(URL)
    第三届蓝桥杯Java高职组决赛第一题
    Source Insight使用小技巧小结
    用android代码显示图片的一部分源码
    Liferay的架构:缓存(第一部分)
    Linux登录ssh携带密码
    about flashback_transaction_query
    数据库系统概念读书笔记——实体-联系模型
    Android Phone和Pad UA区别
  • 原文地址:https://www.cnblogs.com/java-llp/p/10876372.html
Copyright © 2011-2022 走看看