public class StringHttpMessageConverter extends AbstractHttpMessageConverter<String>
HttpMessageConverter that can read and write strings.
By default, this converter supports all media types (*/*),
and writes with a Content-Type of text/plain. This can be overridden
by setting the supportedMediaTypes property.
| Modifier and Type | Field and Description |
|---|---|
static Charset |
DEFAULT_CHARSET
The default charset used by the converter.
|
logger| Constructor and Description |
|---|
StringHttpMessageConverter()
A default constructor that uses
"ISO-8859-1" as the default charset. |
StringHttpMessageConverter(Charset defaultCharset)
A constructor accepting a default charset to use if the requested content
type does not specify one.
|
| Modifier and Type | Method and Description |
|---|---|
protected void |
addDefaultHeaders(HttpHeaders headers,
String s,
MediaType type)
Add default headers to the output message.
|
protected List<Charset> |
getAcceptedCharsets()
Return the list of supported
Charsets. |
protected Long |
getContentLength(String str,
MediaType contentType)
Returns the content length for the given type.
|
protected String |
readInternal(Class<? extends String> clazz,
HttpInputMessage inputMessage)
Abstract template method that reads the actual object.
|
void |
setWriteAcceptCharset(boolean writeAcceptCharset)
Whether the
Accept-Charset header should be written to any outgoing
request sourced from the value of Charset.availableCharsets(). |
boolean |
supports(Class<?> clazz)
Indicates whether the given class is supported by this converter.
|
protected void |
writeInternal(String str,
HttpOutputMessage outputMessage)
Abstract template method that writes the actual body.
|
canRead, canRead, canWrite, canWrite, getDefaultCharset, getDefaultContentType, getSupportedMediaTypes, read, setDefaultCharset, setSupportedMediaTypes, writeclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetSupportedMediaTypespublic static final Charset DEFAULT_CHARSET
public StringHttpMessageConverter()
"ISO-8859-1" as the default charset.StringHttpMessageConverter(Charset)public StringHttpMessageConverter(Charset defaultCharset)
public void setWriteAcceptCharset(boolean writeAcceptCharset)
Accept-Charset header should be written to any outgoing
request sourced from the value of Charset.availableCharsets().
The behavior is suppressed if the header has already been set.
As of 5.2, by default is set to false.
public boolean supports(Class<?> clazz)
AbstractHttpMessageConvertersupports in class AbstractHttpMessageConverter<String>clazz - the class to test for supporttrue if supported; false otherwiseprotected String readInternal(Class<? extends String> clazz, HttpInputMessage inputMessage) throws IOException
AbstractHttpMessageConverterAbstractHttpMessageConverter.read(java.lang.Class<? extends T>, org.springframework.http.HttpInputMessage).readInternal in class AbstractHttpMessageConverter<String>clazz - the type of object to returninputMessage - the HTTP input message to read fromIOException - in case of I/O errorsprotected Long getContentLength(String str, @Nullable MediaType contentType)
AbstractHttpMessageConverterBy default, this returns null, meaning that the content length is unknown.
Can be overridden in subclasses.
getContentLength in class AbstractHttpMessageConverter<String>str - the type to return the content length fornull if not knownprotected void addDefaultHeaders(HttpHeaders headers, String s, @Nullable MediaType type) throws IOException
AbstractHttpMessageConverterThis implementation delegates to AbstractHttpMessageConverter.getDefaultContentType(Object) if a
content type was not provided, set if necessary the default character set, calls
AbstractHttpMessageConverter.getContentLength(T, org.springframework.http.MediaType), and sets the corresponding headers.
addDefaultHeaders in class AbstractHttpMessageConverter<String>IOExceptionprotected void writeInternal(String str, HttpOutputMessage outputMessage) throws IOException
AbstractHttpMessageConverterAbstractHttpMessageConverter.write(T, org.springframework.http.MediaType, org.springframework.http.HttpOutputMessage).writeInternal in class AbstractHttpMessageConverter<String>str - the object to write to the output messageoutputMessage - the HTTP output message to write toIOException - in case of I/O errorsprotected List<Charset> getAcceptedCharsets()
Charsets.
By default, returns Charset.availableCharsets().
Can be overridden in subclasses.