zoukankan      html  css  js  c++  java
  • json数据与Gson工具类的使用

    JS中使用JSON
    JSON对象 --> JSON字符串:JSON.stringify(对象)
    JSON字符串 --> JSON对象:JSON.parse(JSON字符串)

     1 <script type="text/javascript">
     2     var json={"name":"chen","age":18,"date":new Date(),"school":null,"hobby":[1,2,3],"gender":true};
     3     document.write(typeof json+"<br>");//object
     4     document.write(json+"<br>");//[object Object]
     5     document.write(json.name+"<br>");//chen
     6     document.write(json.hobby[0]+"<br>");//1
     7     document.write("JSON转化成string<br>");
     8     var jsonStr=JSON.stringify(json);
     9     document.write(typeof jsonStr+"<br>");//string
    10     document.write(jsonStr+"<br>");//{"name":"chen","age":18,"date":"2017-08-17T13:15:32.981Z","school":null,"hobby":[1,2,3],"gender":true}
    11     //document.write(jsonStr.name+"<br>");//undefined出错
    12     //document.write(jsonStr.hobby[0]+"<br>");//undefined出错
    13     document.write("string转化成JSON<br>");
    14     var jsonObj=JSON.parse(jsonStr);
    15     document.write(typeof jsonObj+"<br>");//object
    16     document.write(jsonObj+"<br>");//[object Object]
    17     document.write(jsonObj.name+"<br>");//chen
    18     document.write(jsonObj.hobby[0]+"<br>");//1
    19 </script>

    JAVA中使用JSON

    目前Java中用的比较多的JSON解析工具:

    • json-lib --> 使用麻烦,解析性能最差
    • Jackson --> 使用较麻烦,解析性能最好
    • Gson --> 使用简单,解析性能中等
      • Gson是谷歌出的一款JSON解析工具,使用简单,且性能较好。

    GSON工具类的使用

     1 // 将普通对象转换为JSON字符串!
     2 Student stu = new Student("尘", 18);
     3 System.out.println(stu);//com.test.Student@15db9742-----内存地址
     4 Gson gson = new Gson();
     5 String json = gson.toJson(stu);
     6 System.out.println(json);//{"name":"尘","age":18}
     7 Student fromJson1 = gson.fromJson(json, Student.class);
     8 System.out.println(fromJson1);//com.test.Student@25f38edc-----内存地址
     9 
    10 // 把Map转换成JSON字符串
    11  Map<String,String> map2 = new HashMap<String,String>();
    12  map2.put("hobby","篮球");
    13  map2.put("gender", "男");
    14  String json2 = gson.toJson(map2);
    15  System.out.println(json2);//{"gender":"男","hobby":"篮球"}
    16  Map<String,String> fromJson2 = gson.fromJson(json2, Map.class);
    17  System.out.println(fromJson2);//{gender=男, hobby=篮球}
    18 
    19 // 将List转换为JSON字符串
    20 List<Student> list = new ArrayList<Student>();
    21 list.add(new Student("Tom", 7));
    22 list.add(new Student("Jerry", 5));
    23 String json3 = gson.toJson(list);
    24 System.out.println(json3);//[{"name":"Tom","age":7},{"name":"Jerry","age":5}]
    25 List<Map<String, Object>> fromJson3 = gson.fromJson(json3, List.class);
    26 for (Map map3 : fromJson3) {
    27     System.out.println(map3.get("name"));
    28     //Tom
    29     //Jerry
    30 }

     付gson-2.2.4.jar下载地址(百度云) 密码:9ngh

  • 相关阅读:
    IDEA 必要配置
    人工智能能力提升指导总结
    lerna管理前端packages的最佳实践
    【和60】软件即服务的三重境界
    项目章程
    阅读计划
    使用PHP处理文本小技巧
    PHP性能分析
    Ubuntu安装nodejs和yarn
    挖矿病毒
  • 原文地址:https://www.cnblogs.com/lixiang1993/p/7384517.html
Copyright © 2011-2022 走看看