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>
public class GsonHttpMessageConverter extends AbstractJsonHttpMessageConverter
Implementation ofHttpMessageConverterthat 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 supportsapplication/jsonandapplication/*+jsonwithUTF-8character set.Tested against Gson 2.8; compatible with Gson 2.0 and higher.
- Since:
- 4.1
- Author:
- Roy Clarkson, Juergen Hoeller
- See Also:
Gson,GsonBuilder,setGson(com.google.gson.Gson)
Field Summary
Fields inherited from class org.springframework.http.converter.json.AbstractJsonHttpMessageConverter
DEFAULT_CHARSET
Fields inherited from class org.springframework.http.converter.AbstractHttpMessageConverter
logger
Constructor Summary
Constructors Constructor Description GsonHttpMessageConverter()Construct a newGsonHttpMessageConverterwith default configuration.GsonHttpMessageConverter(com.google.gson.Gson gson)Construct a newGsonHttpMessageConverterwith the given delegate.
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description com.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, writeInternal
Methods inherited from class org.springframework.http.converter.AbstractGenericHttpMessageConverter
canRead, canWrite, supports, write, writeInternal
Methods inherited from class org.springframework.http.converter.AbstractHttpMessageConverter
addDefaultHeaders, canRead, canRead, canWrite, canWrite, getContentLength, getDefaultCharset, getDefaultContentType, getSupportedMediaTypes, read, setDefaultCharset, setSupportedMediaTypes, write
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.springframework.http.converter.HttpMessageConverter
canRead, canWrite, getSupportedMediaTypes, read, write
Constructor Detail
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 Detail
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:
GsonHttpMessageConverter(Gson)
getGson
public com.google.gson.Gson getGson()
Return the configuredGsoninstance for this converter.
readInternal
protected Object readInternal(Type resolvedType, Reader reader) throws Exception
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
protected void writeInternal(Object object, @Nullable Type type, Writer writer) throws Exception
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