What is GSON ππ»ββοΈβ JSON vs GSON
GSON is a Java library that can be used to convert Java Objects into their JSON representation. It can also be used to convert a JSON string to an equivalent Java object. GSON can workπ·π»ββοΈ with arbitrary Java objects including pre-existing objects that you do notπ« have source-code of. while JSON is a data format that is human-readable and supported by a wide variety of languages.
There are a few open-source projects that can convert Java objects to JSON. However, most of them requireπ that you place Java annotations in your classes; something that you can not do if you do not have access𦻠to the source-code. Most also do not fully support the use of Java Generics. GSON considers both of these as very important design goals.
Objectiveπ§π»ββοΈ
- Provide simple
toJson()
andfromJson()
methods to convert Java objects to JSON and vice-versa - Allow pre-existing unmodifiable objects to be converted to and from JSON
- Extensive support of Java Generics
- Allow custom representations for objects
- Support arbitrarily complex objects (with deep inheritance hierarchies and extensive use of generic types)
Advantage βπ
Standardized β GSON is a standardized library that is managed by Google.
Efficient β It is a reliable, fast, and efficient extension to the Java standard library. Optimized β The library is highly optimized.
Support Generics β It provides extensive support for generics.
Supports complex inner classes β It supports complex objects with deep inheritance hierarchies.
Download/Integrating π§©
Gradleπ:
dependencies {
implementation 'com.google.code.gson:gson:2.8.6'
}
Maven πΏ:
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.8.6</version>
</dependency>
Gson jar downloads are available from Maven Central.