Gson is an Open Source 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.
Goals for Gson
Provide easy to use mechanisms like toString() and constructor (factory method) to convert Java to JSON and vice-versa
Allow pre-existing unmodifiable objects to be converted to and from JSON
Allow custom representations for objects
Support arbitrarily complex objects
Generate compact and readable JSON output
Source code of Gson is available on Github.