zoukankan      html  css  js  c++  java
  • json对象与字符串之间的转换和Gson的使用

    一、jsp中 json对象和json的string类型形式的转换
    1、json---->String 
        var   jsonObj = {
            "id":11,
            "name":"mmm"
        };
        //将json对象转换为字符串
        var  str = JSON.stringify(jsonObj);
    2、String---->json
        //将字符串转换为json对象
        var json = JSON.parse(str);


    二、java中的java对象与json的字符串形式之间的转换(使用Gson jar包)
    2.1、java对象---->json的字符串形式
        Person per = new Person(1,"aa",200.0,22);
        String jsonStr = new Gson().toJson(per);
        //输出结果:{"id":1,"name":"aa","salary":200.0,"age":22}  

     2.2 、java对象集合--->json对象数组的字符串形式
        List<Person> personList = new ArrayList<Person>();
        personList.add(new Person(2, "bb", 300, 24));
        personList.add(new Person(3, "cc", 400, 25));
        personList.add(new Person(4, "dd", 500, 26));
        String json1 = new Gson().toJson(personList);
        System.out.println(json1);
        //输出结果为:[{"id":2,"name":"bb","salary":300.0,"age":24},          {"id":3,"name":"cc","salary":400.0,"age":25},{"id":4,"name":"dd","salary":500.0,"age":26}]
       
    3.1、json的字符串形式--->java对象
       String str = "{"id":1,"name":"aa","salary":200.0,"age":22}";
      Person fromJson = new Gson().fromJson(str, Person.class);
      System.out.println(fromJson);
    //输出结果为:Person [id=1, name=aa, salary=200.0, age=22]
    3.2、json对象数组的字符串形式--->java对象集合
    String str2 = "[{"id":2,"name":"bb","salary":300.0,"age":24},{"id":3,"name":"cc","salary":400.0,"age":25},{"id":4,"name":"dd","salary":500.0,"age":26}]";
      List<Person> personsList1 = new Gson().fromJson(str2,new PersonTypeToken().getType());//新建PersonTypeToken类继承TypeToken类
      System.out.println(personsList1);
    输出结果为:[Person [id=2, name=bb, salary=300.0, age=24], Person [id=3, name=cc, salary=400.0, age=25], Person [id=4, name=dd, salary=500.0, age=26]]
  • 相关阅读:
    Java母牛繁殖问题
    【转】区块链交易的并发执行
    Cinder 架构分析、高可用部署与核心功能解析
    【转】区块链的隐私保护方案介绍
    如何在ES6中判断类中是否包含某个属性和方法
    阿里云MySQL及Redis灵异断连现象:安全组静默丢包解决方法
    如何区别ES5和ES6创建类(异同点)
    这两家独角兽企业在强敌缠斗中崛起
    来看一看那些已经倒闭的互联网公司
    《并行计算的编程模型》一3.6.1 全局同步屏障
  • 原文地址:https://www.cnblogs.com/m-ming/p/11598438.html
Copyright © 2011-2022 走看看