最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Gson如何序列化內(nèi)部類

 更新時間:2020年11月02日 15:08:59   作者:一點教程  
本文介紹如何使用Gson對成員內(nèi)部類及靜態(tài)內(nèi)部類進(jìn)行序列化/反序列化,幫助大家更好的理解和使用gson庫,感興趣的朋友可以了解下

1 Gson處理成員內(nèi)部類

1.1 編寫核心類

MainApp:

package com.yiidian.gson;

import com.google.gson.Gson;

public class MainApp {

  public static void main(String args[]) {

    Student student = new Student();
    student.setRollNo(1);
    Student.Name name = student.new Name();

    name.firstName = "Mahesh";
    name.lastName = "Kumar";
    student.setName(name);
    Gson gson = new Gson();

    //序列化
    String jsonString = gson.toJson(student);
    System.out.println(jsonString);
    //反序列化
    student = gson.fromJson(jsonString, Student.class);

    System.out.println("Roll No: "+ student.getRollNo());
    System.out.println("First Name: "+ student.getName().firstName);
    System.out.println("Last Name: "+ student.getName().lastName);

    String nameString = gson.toJson(name);
    System.out.println(nameString);

    name = gson.fromJson(nameString,Student.Name.class);
    System.out.println(name.getClass());
    System.out.println("First Name: "+ name.firstName);
    System.out.println("Last Name: "+ name.lastName);
  }

}

class Student {
  private int rollNo;
  private Name name;

  public int getRollNo() {
    return rollNo;
  }

  public void setRollNo(int rollNo) {
    this.rollNo = rollNo;
  }

  public Name getName() {
    return name;
  }

  public void setName(Name name) {
    this.name = name;
  }

  //成員內(nèi)部類
  class Name {
    public String firstName;
    public String lastName;
  }
}

1.2 運行測試

2 Gson處理靜態(tài)內(nèi)部類

2.1 編寫核心類

MainApp:

package com.yiidian.gson;

import com.google.gson.Gson;


public class MainApp {

  public static void main(String args[]) {

    Student student = new Student();
    student.setRollNo(1);
    Student.Name name = new Student.Name();

    name.firstName = "Mahesh";
    name.lastName = "Kumar";
    student.setName(name);

    Gson gson = new Gson();
    String jsonString = gson.toJson(student);
    System.out.println(jsonString);
    student = gson.fromJson(jsonString, Student.class);

    System.out.println("Roll No: "+ student.getRollNo());
    System.out.println("First Name: "+ student.getName().firstName);
    System.out.println("Last Name: "+ student.getName().lastName);
    String nameString = gson.toJson(name);
    System.out.println(nameString);

    name = gson.fromJson(nameString,Student.Name.class);
    System.out.println(name.getClass());
    System.out.println("First Name: "+ name.firstName);
    System.out.println("Last Name: "+ name.lastName);
  }

}

class Student {
  private int rollNo;
  private Name name;

  public int getRollNo() {
    return rollNo;
  }

  public void setRollNo(int rollNo) {
    this.rollNo = rollNo;
  }

  public Name getName() {
    return name;
  }

  public void setName(Name name) {
    this.name = name;
  }

  //靜態(tài)內(nèi)部類
  static class Name {
    public String firstName;
    public String lastName;
  }
}

2.2 運行測試

以上就是Gson如何序列化內(nèi)部類的詳細(xì)內(nèi)容,更多關(guān)于gson 序列化的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Java技術(shù)匯總

    Java技術(shù)匯總

    本篇文章主要對Java基本知識點和技術(shù)點的一些看法和介紹,具有很好的參考價值。下面跟著小編一起來看下吧
    2017-03-03
  • 詳解SpringBoot中使用JPA作為數(shù)據(jù)持久化框架

    詳解SpringBoot中使用JPA作為數(shù)據(jù)持久化框架

    這篇文章主要介紹了SpringBoot中使用JPA作為數(shù)據(jù)持久化框架的相關(guān)知識,本文通過示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-03-03
  • JDK與JRE的下載和安裝以及配置JDK環(huán)境變量圖文教程

    JDK與JRE的下載和安裝以及配置JDK環(huán)境變量圖文教程

    JRE也就是(Java?RuntimeEnvironment)Java運行環(huán)境,是運行JAVA程序所必須的環(huán)境的集合,包含各種類庫,下面這篇文章主要給大家介紹了關(guān)于JDK與JRE的下載和安裝以及配置JDK環(huán)境變量的相關(guān)資料,需要的朋友可以參考下
    2023-12-12
  • Spring Boot詳解創(chuàng)建和運行基礎(chǔ)流程

    Spring Boot詳解創(chuàng)建和運行基礎(chǔ)流程

    這篇文章主要介紹了SpringBoot創(chuàng)建和運行的基礎(chǔ)流程,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • Java面試突擊之Bean作用域詳解

    Java面試突擊之Bean作用域詳解

    Spring?框架作為一個管理?Bean?的?IoC?容器,那么?Bean?自然是?Spring?中的重要資源了,那?Bean?的作用域是什么意思?又有幾種類型呢?接下來我們一起來看
    2022-08-08
  • SpringBoot4.5.2 整合HikariCP 數(shù)據(jù)庫連接池操作

    SpringBoot4.5.2 整合HikariCP 數(shù)據(jù)庫連接池操作

    這篇文章主要介紹了SpringBoot4.5.2 整合HikariCP 數(shù)據(jù)庫連接池操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • java數(shù)據(jù)結(jié)構(gòu)之樹基本概念解析及代碼示例

    java數(shù)據(jù)結(jié)構(gòu)之樹基本概念解析及代碼示例

    這篇文章主要介紹了java數(shù)據(jù)結(jié)構(gòu)之樹基本概念解析及代碼示例,介紹了樹的定義,基本術(shù)語,主要操作及實現(xiàn)等相關(guān)內(nèi)容,具有一定參考價值,需要的朋友可了解下。
    2017-11-11
  • Java對接微信支付全過程

    Java對接微信支付全過程

    本文主要介紹了Java對接微信支付全過程,涵蓋注冊商戶、生成預(yù)支付訂單、處理回調(diào)和查詢訂單狀態(tài)等,具有一定的參考價值,感興趣的可以了解一下
    2025-03-03
  • Java實現(xiàn)將PPT轉(zhuǎn)為OFD過程詳解

    Java實現(xiàn)將PPT轉(zhuǎn)為OFD過程詳解

    本文將通過Java后端程序代碼展示如何實現(xiàn)將PPT幻燈片轉(zhuǎn)成OFD格式,文中的示例代碼講解詳細(xì),對我們學(xué)習(xí)或工作有一定的幫助,需要的可以參考一下
    2022-01-01
  • 一篇文章教你用Java使用JVM工具檢測問題

    一篇文章教你用Java使用JVM工具檢測問題

    這篇文章主要介紹了深入理解Java使用JVM工具檢測問題,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-09-09

最新評論

望奎县| 壶关县| 双桥区| 北海市| 大石桥市| 青川县| 苗栗市| 东海县| 兴宁市| 万载县| 渭南市| 池州市| 澎湖县| 法库县| 江北区| 绵阳市| 平泉县| 平乐县| 综艺| 瑞昌市| 崇阳县| 定陶县| 石屏县| 长沙市| 万年县| 青冈县| 牙克石市| 衡山县| 天祝| 祁阳县| 广西| 长汀县| 界首市| 正安县| 巴彦淖尔市| 英吉沙县| 临武县| 竹溪县| 鄂伦春自治旗| 巴中市| 桦南县|