StringHttpMessageConverter
|
HttpMessageConverter 的實現類,可以從 HTTP 請求和響應中讀寫 String 例項。預設情況下,此轉換器支援所有 text 媒體型別(text/* ),並以 Content-Type 為 text/plain 寫入。
|
FormHttpMessageConverter
|
HttpMessageConverter 的實現類,可以從 HTTP 請求和響應中讀寫表單資料。預設情況下,此轉換器讀寫 application/x-www-form-urlencoded 媒體型別。表單資料讀寫到一個 MultiValueMap<String, String> 。此轉換器還可以寫入(但不能讀取)從 MultiValueMap<String, Object> 讀取的 multipart 資料。預設支援 multipart/form-data 。對於寫入表單資料,可以支援額外的 multipart 子型別。有關更多詳細資訊,請查閱 FormHttpMessageConverter 的 javadoc。
|
ByteArrayHttpMessageConverter
|
HttpMessageConverter 的實現類,可以從 HTTP 請求和響應中讀寫位元組陣列。預設情況下,此轉換器支援所有媒體型別(*/* ),並以 Content-Type 為 application/octet-stream 寫入。你可以透過設定 supportedMediaTypes 屬性和覆蓋 getContentType(byte[]) 來覆蓋此行為。
|
MarshallingHttpMessageConverter
|
HttpMessageConverter 的實現類,可以使用 Spring 的 org.springframework.oxm 包中的 Marshaller 和 Unmarshaller 抽象讀寫 XML。此轉換器在使用前需要一個 Marshaller 和 Unmarshaller 。你可以透過建構函式或 bean 屬性注入它們。預設情況下,此轉換器支援 text/xml 和 application/xml 。
|
MappingJackson2HttpMessageConverter
|
HttpMessageConverter 的實現類,可以使用 Jackson 的 ObjectMapper 讀寫 JSON。你可以透過使用 Jackson 提供的註解來根據需要自定義 JSON 對映。當你需要進一步控制時(例如需要為特定型別提供自定義 JSON 序列化器/反序列化器),可以透過 ObjectMapper 屬性注入自定義的 ObjectMapper 。預設情況下,此轉換器支援 application/json 。這需要 com.fasterxml.jackson.core:jackson-databind 依賴項。
|
MappingJackson2XmlHttpMessageConverter
|
HttpMessageConverter 的實現類,可以使用 Jackson XML 擴充套件的 XmlMapper 讀寫 XML。你可以透過使用 JAXB 或 Jackson 提供的註解來根據需要自定義 XML 對映。當你需要進一步控制時(例如需要為特定型別提供自定義 XML 序列化器/反序列化器),可以透過 ObjectMapper 屬性注入自定義的 XmlMapper 。預設情況下,此轉換器支援 application/xml 。這需要 com.fasterxml.jackson.dataformat:jackson-dataformat-xml 依賴項。
|
MappingJackson2CborHttpMessageConverter
|
com.fasterxml.jackson.dataformat:jackson-dataformat-cbor
|
SourceHttpMessageConverter
|
HttpMessageConverter 的實現類,可以從 HTTP 請求和響應中讀寫 javax.xml.transform.Source 。僅支援 DOMSource 、SAXSource 和 StreamSource 。預設情況下,此轉換器支援 text/xml 和 application/xml 。
|
GsonHttpMessageConverter
|
HttpMessageConverter 的實現類,可以使用 "Google Gson" 讀寫 JSON。這需要 com.google.code.gson:gson 依賴項。
|
JsonbHttpMessageConverter
|
HttpMessageConverter 的實現類,可以使用 Jakarta Json Bind API 讀寫 JSON。這需要 jakarta.json.bind:jakarta.json.bind-api 依賴項和一個可用的實現。
|
ProtobufHttpMessageConverter
|
HttpMessageConverter 的實現類,可以使用 "application/x-protobuf" 內容型別以二進位制格式讀寫 Protobuf 訊息。這需要 com.google.protobuf:protobuf-java 依賴項。
|
ProtobufJsonFormatHttpMessageConverter
|
HttpMessageConverter 的實現類,可以讀寫 Protobuf 訊息到 JSON 文件和從 JSON 文件讀寫 Protobuf 訊息。這需要 com.google.protobuf:protobuf-java-util 依賴項。
|