Java Gson 实现 Json 数据的生成与解析
Posted Yogile
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java Gson 实现 Json 数据的生成与解析相关的知识,希望对你有一定的参考价值。
前言
Json 作为一种简单便捷的数据格式,可以被各种语言默认或者以插件支持。
Gson 是 Google 提供的用来在 Java 对象和 JSON 数据之间进行映射的 Java 类库。可以将一个 JSON 字符串转成一个 Java 对象,或者反过来。
Gson
项目地址
- github: google/gson 。
说明
-
Gson是一个Java库,可用于将Java对象转换为其JSON表示形式。它还可以用于将JSON字符串转换为等效的Java对象。Gson可以处理任意Java对象,包括您没有源代码的现有对象。
有一些开源项目可以将Java对象转换为JSON。但是,大多数方法都要求您在类中放置Java批注。如果您无法访问源代码,则无法执行某些操作。大多数还不完全支持Java泛型的使用。Gson认为这两个都是非常重要的设计目标。
功能
- 提供简单的
toJson()
和fromJson()
方法,将Java对象到JSON,反之亦然 - 允许将现有的不可修改对象与JSON相互转换
- Java泛型的广泛支持
- 允许对象的自定义表示
- 支持任意复杂的对象(具有深层继承层次结构和泛型类型的广泛使用)
导入
-
这里只记录 Gradle 的导入方式,更多方式请看 github 项目说明。
目前版本为:2.8.6 。
dependencies { implementation ‘com.google.code.gson:gson:2.8.6‘ }
示例
类
-
使用 Gson 你应先创建一个 JSON 对应的 Java 类。
示例:
public class JsonFromGson { private String name; private String password; public void setName(String name) { this.name = name; } public void setPassword(String password) { this.password = password; } public String getName() { return name; } public String getPassword() { return password; } }
方法
- Gson 主要包含两个常用的方法:
toJson()
和fromJson()
。
toJson()
-
现有一个
JsonFromGson
类的对象,要转化为一个符合JsonFromGson
类的 Json 字符串,示例:Gson gson = new Gson(); JsonFromGson jsonFromGson = new JsonFromGson(); jsonFromGson.setName("yogile"); jsonFromGson.setPassword("yogilepwd"); String getGson = gson.toJson(jsonFromGson); System.out.println(getGson);
-
输出显示:
{"name":"yogile","password":"yogilepwd"}
fromJson()
-
现有一个符合
JsonFromGson
类的 Json 字符串,要转化为一个JsonFromGson
类的对象,示例:Gson gson = new Gson(); String strGson = "{"name":"yogile","password":"yogilepwd"}"; JsonFromGson jsonFromGson = new JsonFromGson(); jsonFromGson = gson.fromJson(strGson, JsonFromGson.class); System.out.println("name: " + jsonFromGson.getName() + " password: " + jsonFromGson.getPassword());
-
输出显示:
name: yogile password: yogilepwd
以上是关于Java Gson 实现 Json 数据的生成与解析的主要内容,如果未能解决你的问题,请参考以下文章