类 ResourceHttpMessageConverter
- java.lang.Object
- org.springframework.http.converter.AbstractHttpMessageConverter<Resource>
- org.springframework.http.converter.ResourceHttpMessageConverter
- 所有已实现的接口:
HttpMessageConverter<Resource>
public class ResourceHttpMessageConverter extends AbstractHttpMessageConverter<Resource>
Implementation ofHttpMessageConverterthat can read/writeResourcesand supports byte range requests.By default, this converter can read all media types. The
MediaTypeFactoryis used to determine theContent-Typeof written resources.- 从以下版本开始:
- 3.0.2
- 作者:
- Arjen Poutsma, Juergen Hoeller, Kazuki Shimizu
字段概要
从类继承的字段 org.springframework.http.converter.AbstractHttpMessageConverter
logger
构造器概要
构造器 构造器 说明 ResourceHttpMessageConverter()Create a new instance of theResourceHttpMessageConverterthat supports read streaming, i.e. can convert anHttpInputMessagetoInputStreamResource.ResourceHttpMessageConverter(boolean supportsReadStreaming)Create a new instance of theResourceHttpMessageConverter.
方法概要
所有方法 实例方法 具体方法 修饰符和类型 方法 说明 protected LonggetContentLength(Resource resource, MediaType contentType)Returns the content length for the given type.protected MediaTypegetDefaultContentType(Resource resource)Returns the default content type for the given type.protected ResourcereadInternal(Class<? extends Resource> clazz, HttpInputMessage inputMessage)Abstract template method that reads the actual object.protected booleansupports(Class<?> clazz)Indicates whether the given class is supported by this converter.protected voidwriteContent(Resource resource, HttpOutputMessage outputMessage)protected voidwriteInternal(Resource resource, HttpOutputMessage outputMessage)Abstract template method that writes the actual body.从类继承的方法 org.springframework.http.converter.AbstractHttpMessageConverter
addDefaultHeaders, canRead, canRead, canWrite, canWrite, getDefaultCharset, getSupportedMediaTypes, read, setDefaultCharset, setSupportedMediaTypes, write
构造器详细资料
ResourceHttpMessageConverter
public ResourceHttpMessageConverter()
Create a new instance of theResourceHttpMessageConverterthat supports read streaming, i.e. can convert anHttpInputMessagetoInputStreamResource.
ResourceHttpMessageConverter
public ResourceHttpMessageConverter(boolean supportsReadStreaming)
Create a new instance of theResourceHttpMessageConverter.- 参数:
supportsReadStreaming- whether the converter should support read streaming, i.e. convert toInputStreamResource- 从以下版本开始:
- 5.0
方法详细资料
supports
protected boolean supports(Class<?> clazz)
从类复制的说明:AbstractHttpMessageConverterIndicates whether the given class is supported by this converter.- 指定者:
supports在类中AbstractHttpMessageConverter<Resource>- 参数:
clazz- the class to test for support- 返回:
trueif supported;falseotherwise
readInternal
protected Resource readInternal(Class<? extends Resource> clazz, HttpInputMessage inputMessage) throws IOException, HttpMessageNotReadableException
从类复制的说明:AbstractHttpMessageConverterAbstract template method that reads the actual object. Invoked fromAbstractHttpMessageConverter.read(java.lang.Class<? extends T>, org.springframework.http.HttpInputMessage).- 指定者:
readInternal在类中AbstractHttpMessageConverter<Resource>- 参数:
clazz- the type of object to returninputMessage- the HTTP input message to read from- 返回:
- the converted object
- 抛出:
IOException- in case of I/O errorsHttpMessageNotReadableException- in case of conversion errors
getDefaultContentType
protected MediaType getDefaultContentType(Resource resource)
从类复制的说明:AbstractHttpMessageConverterReturns the default content type for the given type. Called whenAbstractHttpMessageConverter.write(T, org.springframework.http.MediaType, org.springframework.http.HttpOutputMessage)is invoked without a specified content type parameter.By default, this returns the first element of the
supportedMediaTypesproperty, if any. Can be overridden in subclasses.- 覆盖:
getDefaultContentType在类中AbstractHttpMessageConverter<Resource>- 参数:
resource- the type to return the content type for- 返回:
- the content type, or
nullif not known
getContentLength
protected Long getContentLength(Resource resource, @Nullable MediaType contentType) throws IOException
从类复制的说明:AbstractHttpMessageConverterReturns the content length for the given type.By default, this returns
null, meaning that the content length is unknown. Can be overridden in subclasses.- 覆盖:
getContentLength在类中AbstractHttpMessageConverter<Resource>- 参数:
resource- the type to return the content length for- 返回:
- the content length, or
nullif not known - 抛出:
IOException
writeInternal
protected void writeInternal(Resource resource, HttpOutputMessage outputMessage) throws IOException, HttpMessageNotWritableException
从类复制的说明:AbstractHttpMessageConverterAbstract template method that writes the actual body. Invoked fromAbstractHttpMessageConverter.write(T, org.springframework.http.MediaType, org.springframework.http.HttpOutputMessage).- 指定者:
writeInternal在类中AbstractHttpMessageConverter<Resource>- 参数:
resource- the object to write to the output messageoutputMessage- the HTTP output message to write to- 抛出:
IOException- in case of I/O errorsHttpMessageNotWritableException- in case of conversion errors
writeContent
protected void writeContent(Resource resource, HttpOutputMessage outputMessage) throws IOException, HttpMessageNotWritableException