此版本仍在开发中,尚未被视为稳定版。如需最新稳定版本,请使用 Spring Framework 7.0.6spring-doc.cadn.net.cn

消息转换器

您可以通过重写 configureMessageConverters() 来配置要使用的 HttpMessageConverter 个实例。spring-doc.cadn.net.cn

以下示例配置了自定义的 Jackson JSON 和 XML 转换器,并使用了自定义的映射器,而不是默认的映射器:spring-doc.cadn.net.cn

@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))
	}
}