温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

gson实现对象序列化的方法

发布时间:2020-11-03 15:00:26 来源:亿速云 阅读:214 作者:Leah 栏目:开发技术

本篇文章为大家展示了gson实现对象序列化的方法,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

1.编写核心类

MainApp:

package com.yiidian.gson;

import com.google.gson.Gson;
import com.google.gson.GsonBuilder;

import java.io.*;


public class MainApp {

  public static void main(String args[]) {

    MainApp tester = new MainApp();
    try {
      Student student = new Student();
      student.setAge(10);
      student.setName("eric");
      tester.writeJSON(student);
      Student student1 = tester.readJSON();
      System.out.println(student1);
    }
    catch(FileNotFoundException e) {
      e.printStackTrace();
    }
    catch(IOException e) {
      e.printStackTrace();
    }
  }

  //把Java对象存储student.json文件
  private void writeJSON(Student student) throws IOException {
    GsonBuilder builder = new GsonBuilder();
    Gson gson = builder.create();
    FileWriter writer = new FileWriter("student.json");
    writer.write(gson.toJson(student));
    writer.close();
  }

  //从student.json文件读取Java对象
  private Student readJSON() throws FileNotFoundException {
    GsonBuilder builder = new GsonBuilder();
    Gson gson = builder.create();
    BufferedReader bufferedReader = new BufferedReader(
        new FileReader("student.json"));

    Student student = gson.fromJson(bufferedReader, Student.class);
    return student;
  }
}

class Student {
  private String name;
  private int age;
  public Student(){}

  public String getName() {
    return name;
  }

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

  public int getAge() {
    return age;
  }

  public void setAge(int age) {
    this.age = age;
  }

  public String toString() {
    return "Student [ name: "+name+", age: "+ age+ " ]";
  }
}

2 运行测试

控制台输出:

gson实现对象序列化的方法

项目下生成student.json文件

gson实现对象序列化的方法

上述内容就是gson实现对象序列化的方法,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI