使用WebMvcConfigurationSupport后导致原来返回的json数据变为了xml的解决方法

问题

未使用WebMvcConfigurationSupport拦截时返回的数据都是JSON格式,使用WebMvcConfigurationSupport做拦截后数据的返回变为了XML的格式。

原因

在Spring框架中,WebMvcConfigurationSupport 是一个类,它可以用于自定义Spring MVC的配置。如果您在应用程序中使用了WebMvcConfigurationSupport,而且之前返回的JSON数据现在变成了XML,那么很可能是由于您在配置中进行了一些变更,导致了默认的消息转换器发生了改变。

默认情况下,Spring使用MappingJackson2HttpMessageConverter作为消息转换器,它可以将Java对象转换为JSON格式的数据。如果您在继承WebMvcConfigurationSupport类时没有明确指定消息转换器,可能会导致Spring使用其他默认的消息转换器,比如Jaxb2RootElementHttpMessageConverter,这个转换器可以将Java对象转换为XML格式的数据。

解决办法

java 复制代码
@Configuration
public class CustomWebMvcConfig extends WebMvcConfigurationSupport {

    @Override
    protected void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
        converters.add(new MappingJackson2HttpMessageConverter());
        super.configureMessageConverters(converters);
    }
}
相关推荐
大只鹅18 分钟前
Springboot3.3.4使用spring-data-elasticsearch整合Elasticsearch7.12.1
spring boot·elasticsearch
1.01^100040 分钟前
[6-02-01].第05节:配置文件 - YAML配置文件语法
spring boot
笑衬人心。1 小时前
初学Spring AI 笔记
人工智能·笔记·spring
StephenCurryFans1 小时前
Spring AI vs LangChain4j:Java AI开发框架完整对比指南 🚀
后端·spring
编程小白gogogo2 小时前
Spring学习笔记
笔记·学习·spring
知了一笑2 小时前
SpringBoot3集成多款主流大模型
spring boot·后端·openai
harmful_sheep3 小时前
Spring 为何需要三级缓存解决循环依赖,而不是二级缓存
java·spring·缓存
paopaokaka_luck3 小时前
基于SpringBoot+Vue的酒类仓储管理系统
数据库·vue.js·spring boot·后端·小程序
白仑色4 小时前
Spring Boot 性能优化与最佳实践
spring boot·后端·性能优化·数据库层优化·jvm 层优化·日志优化·transactional优化
风象南4 小时前
SpringBoot基于Java Agent的无侵入式监控实现
java·spring boot·后端