• Java基础98 gson插件的使用


    1、要用到的包  

    概念:JSON是javascript对象的一种形态,是一种轻量级的数据交换格式。一般用来在Java EE后台服务和Android或者ios、HTML5之间进行通信的一种数据传递的格式。

         Gson是谷歌推出的一个用于生成和解析JSON数据格式的工具;

    2、实例        

    实体类 people

     1 package com.shore.entity;
     2 
     3 /**
     4  * @author DSHORE/2019-4-21
     5  *
     6  */
     7 public class People {
     8     private int pid;
     9     private String pname;
    10     private int age;
    11     private String job;
    12     private double sal;
    13     
    14     public People() {
    15         
    16     }
    17     public People(int pid, String pname, int age, String job, double sal) {
    18         super();
    19         this.pid = pid;
    20         this.pname = pname;
    21         this.age = age;
    22         this.job = job;
    23         this.sal = sal;
    24     }
    25     public int getPid() {
    26         return pid;
    27     }
    28     public void setPid(int pid) {
    29         this.pid = pid;
    30     }
    31     public String getPname() {
    32         return pname;
    33     }
    34     public void setPname(String pname) {
    35         this.pname = pname;
    36     }
    37     public int getAge() {
    38         return age;
    39     }
    40     public void setAge(int age) {
    41         this.age = age;
    42     }
    43     public String getJob() {
    44         return job;
    45     }
    46     public void setJob(String job) {
    47         this.job = job;
    48     }
    49     public double getSal() {
    50         return sal;
    51     }
    52     public void setSal(double sal) {
    53         this.sal = sal;
    54     }
    55     @Override
    56     public String toString() {
    57         return "People [pid=" + pid + ", pname=" + pname + ", age=" + age
    58                 + ", job=" + job + ", sal=" + sal + "]";
    59     }
    60 }

    gson 测试类

     1 package com.shore.test;
     2 
     3 import java.lang.reflect.Type;
     4 import java.util.ArrayList;
     5 import java.util.List;
     6 
     7 import net.sf.json.JSONObject;
     8 
     9 import com.google.gson.Gson;
    10 import com.google.gson.reflect.TypeToken;
    11 import com.shore.entity.People;
    12 
    13 /**
    14  * @author DSHORE/2019-4-21
    15  *
    16  */
    17 public class GsonTest {
    18     public static void main(String[] args) {
    19         People p = new People();
    20         p.setAge(18);
    21         p.setPname("张三");
    22         p.setJob("工程师");
    23         p.setPid(1);
    24         p.setSal(10000);
    25         
    26         People p2 = new People();
    27         p2.setAge(20);
    28         p2.setPname("李四");
    29         p2.setJob("设计师");
    30         p2.setPid(2);
    31         p2.setSal(8000);
    32         
    33         People p3 = new People();
    34         p3.setAge(20);
    35         p3.setPname("王五");
    36         p3.setJob("工程师");
    37         p3.setPid(3);
    38         p3.setSal(15000);
    39         
    40         //1.将java对象转为json字符串
    41         Gson gson = new Gson();
    42         String json = gson.toJson(p);
    43         System.out.println(json); //返回值:{"pid":1,"pname":"张三","age":18,"job":"工程师","sal":10000.0}
    44         
    45         //2.将json字符串转为java对象
    46         json = "{"age":18,"job":"工程师","pid":1,"pname":"张三","sal":10000}";
    47         People people = gson.fromJson(json, People.class);
    48         System.out.println(people);//返回值:People [pid=1, pname=张三, age=18, job=工程师, sal=10000.0]
    49         //p2对象
    50         JSONObject jsonObject = JSONObject.fromObject(p2);
    51         System.out.println(jsonObject);//返回值:{"age":20,"job":"设计师","pid":2,"pname":"李四","sal":8000}
    52         
    53         //3.将一个对象集合转为json
    54         List<People> list = new ArrayList<People>();
    55         list.add(p);
    56         list.add(p2);
    57         list.add(p3);
    58         json=gson.toJson(list);
    59         System.out.println(json);//返回值:[{"pid":1,"pname":"张三","age":18,"job":"工程师","sal":10000.0},{"pid":2,"pname":"李四","age":20,"job":"设计师","sal":8000.0},{"pid":3,"pname":"王五","age":20,"job":"工程师","sal":15000.0}]
    60         
    61         //4.将json字符串转为带泛型集合对象
    62         Type listType=new TypeToken<List<People>>(){}.getType();
    63         List<People> list2=gson.fromJson(json,listType);
    64         System.out.println(list2.get(2).getPname());//返回值:王五          get(2)中的2表示:下标值
    65     }
    66 }

    json插件的使用(java对象和json字符串对象之间的转换)

    原创作者:DSHORE

    作者主页:http://www.cnblogs.com/dshore123/

    原文出自:https://www.cnblogs.com/dshore123/p/10746722.html

    欢迎转载,转载务必说明出处。(如果本文对您有帮助,可以点击一下右下角的 推荐,或评论,谢谢!

  • 相关阅读:
    链表问题
    有关动态规划的LeetCode
    正则表达式匹配与自动机
    基于数据库范式的一点点想法
    html5 API
    Web鼠标事件
    webpack模块化原理
    Jquery数据缓存
    图片懒加载
    MySql存储过程的调试
  • 原文地址:https://www.cnblogs.com/dshore123/p/10746722.html
Copyright © 2020-2023  润新知