codegen | ||
examples/android-proguard-example | ||
extras | ||
gson | ||
lib | ||
metrics | ||
proto | ||
.gitignore | ||
.travis.yml | ||
CHANGELOG.md | ||
GsonDesignDocument.md | ||
LICENSE | ||
pom.xml | ||
README.md | ||
ReleaseProcess.md | ||
UserGuide.md |
google-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.
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.
Gson Goals
- Provide simple toJson() and fromJson() 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)
Gson Downloads
- Gson 2.5 Download downloads at Maven Central
Gson Documentation
- Gson API: Javadocs for the current Gson release
- Gson user guide: This guide contains examples on how to use Gson in your code.
- Gson Roadmap: Details on upcoming releases
- Gson design document: This document discusses issues we faced while designing Gson. It also include a comparison of Gson with other Java libraries that can be used for Json conversion
Please use the google-gson Google group to discuss Gson, or to post questions.
Gson-related Content Created by Third Parties
- Gson Tutorial by
StudyTrails