メッセージコンバーター

configureMessageConverters() (Javadoc) をオーバーライドすることで、使用する HttpMessageConverter インスタンスを構成できます。

次の例では、デフォルトのマッパーの代わりにカスタマイズされたマッパーを使用して、カスタム Jackson JSON および XML コンバーターを構成します。

  • Java

  • Kotlin

@Configuration
public class WebConfiguration implements WebMvcConfigurer {

	@Override
	public void configureMessageConverters(HttpMessageConverters.ServerBuilder builder) {
		JsonMapper jsonMapper = JsonMapper.builder()
				.findAndAddModules()
				.enable(SerializationFeature.INDENT_OUTPUT)
				.defaultDateFormat(new SimpleDateFormat("yyyy-MM-dd"))
				.build();
		XmlMapper xmlMapper = XmlMapper.builder()
				.findAndAddModules()
				.defaultUseWrapper(false)
				.build();
		builder.withJsonConverter(new JacksonJsonHttpMessageConverter(jsonMapper))
				.withXmlConverter(new JacksonXmlHttpMessageConverter(xmlMapper));
	}
}
@Configuration
class WebConfiguration : WebMvcConfigurer {

	override fun configureMessageConverters(builder: HttpMessageConverters.ServerBuilder) {
		val jsonMapper = JsonMapper.builder()
			.findAndAddModules()
			.enable(SerializationFeature.INDENT_OUTPUT)
			.defaultDateFormat(SimpleDateFormat("yyyy-MM-dd"))
			.build()
		val xmlMapper = XmlMapper.builder()
			.findAndAddModules()
			.defaultUseWrapper(false)
			.build()
		builder.withJsonConverter(JacksonJsonHttpMessageConverter(jsonMapper))
			.withXmlConverter(JacksonXmlHttpMessageConverter(xmlMapper))
	}
}