Class GsonHttpMessageConverter
java.lang.Object
org.springframework.http.converter.AbstractHttpMessageConverter<T>
org.springframework.http.converter.AbstractGenericHttpMessageConverter<Object>
org.springframework.http.converter.json.AbstractJsonHttpMessageConverter
org.springframework.http.converter.json.GsonHttpMessageConverter
- All Implemented Interfaces:
GenericHttpMessageConverter<Object>,HttpMessageConverter<Object>
Implementation of
HttpMessageConverter
that can read and write JSON using the
Google Gson library.
This converter can be used to bind to typed beans or untyped HashMaps.
By default, it supports application/json and application/*+json with
UTF-8 character set.
Tested against Gson 2.8; compatible with Gson 2.0 and higher.
- Since:
- 4.1
- Author:
- Roy Clarkson, Juergen Hoeller
- See Also:
-
GsonGsonBuildersetGson(com.google.gson.Gson)
-
Field Summary
Fields inherited from class org.springframework.http.converter.json.AbstractJsonHttpMessageConverter
DEFAULT_CHARSETFields inherited from class org.springframework.http.converter.AbstractHttpMessageConverter
logger -
Constructor Summary
ConstructorsConstructorDescriptionConstruct a newGsonHttpMessageConverterwith default configuration.GsonHttpMessageConverter(com.google.gson.Gson gson) Construct a newGsonHttpMessageConverterwith the given delegate. -
Method Summary
Modifier and TypeMethodDescriptioncom.google.gson.GsongetGson()Return the configuredGsoninstance for this converter.protected ObjectreadInternal(Type resolvedType, Reader reader) Template method that reads the JSON-bound object from the givenReader.voidsetGson(com.google.gson.Gson gson) Set theGsoninstance to use.protected voidwriteInternal(Object object, Type type, Writer writer) Template method that writes the JSON-bound object to the givenWriter.Methods inherited from class org.springframework.http.converter.json.AbstractJsonHttpMessageConverter
read, readInternal, setJsonPrefix, setPrefixJson, writeInternalMethods inherited from class org.springframework.http.converter.AbstractGenericHttpMessageConverter
canRead, canWrite, supports, write, writeInternalMethods inherited from class org.springframework.http.converter.AbstractHttpMessageConverter
addDefaultHeaders, canRead, canRead, canWrite, canWrite, getContentLength, getDefaultCharset, getDefaultContentType, getSupportedMediaTypes, read, setDefaultCharset, setSupportedMediaTypes, writeMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.springframework.http.converter.HttpMessageConverter
canRead, canWrite, getSupportedMediaTypes, getSupportedMediaTypes, read, write
-
Constructor Details
-
GsonHttpMessageConverter
public GsonHttpMessageConverter()Construct a newGsonHttpMessageConverterwith default configuration. -
GsonHttpMessageConverter
public GsonHttpMessageConverter(com.google.gson.Gson gson) Construct a newGsonHttpMessageConverterwith the given delegate.- Parameters:
gson- the Gson instance to use- Since:
- 5.0
-
-
Method Details
-
setGson
public void setGson(com.google.gson.Gson gson) Set theGsoninstance to use. If not set, a defaultGsoninstance will be used.Setting a custom-configured
Gsonis one way to take further control of the JSON serialization process.- See Also:
-
getGson
public com.google.gson.Gson getGson()Return the configuredGsoninstance for this converter. -
readInternal
Description copied from class:AbstractJsonHttpMessageConverterTemplate method that reads the JSON-bound object from the givenReader.- Specified by:
readInternalin classAbstractJsonHttpMessageConverter- Parameters:
resolvedType- the resolved generic typereader- the Reader to use- Returns:
- the JSON-bound object
- Throws:
Exception- in case of read/parse failures
-
writeInternal
Description copied from class:AbstractJsonHttpMessageConverterTemplate method that writes the JSON-bound object to the givenWriter.- Specified by:
writeInternalin classAbstractJsonHttpMessageConverter- Parameters:
object- the object to write to the output messagetype- the type of object to write (may benull)writer- the Writer to use- Throws:
Exception- in case of write failures
-