springboot版本2.6.10

springboot引入ackson Dataformat XML后原本返回json的却返回xml

<dependency>
<groupId>com.fasterxml.jackson.dataformat</groupId>
<artifactId>jackson-dataformat-xml</artifactId>
</dependency>
————————————————

解决办法 

@Configuration
public class WebMvcConfig implements WebMvcConfigurer {

    /***
    * @return: void
    * @Description: 这是排除掉xml格式的返回值,如果需要使用xml返回请注掉本块代码
    */
    @Override
    public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
        List<HttpMessageConverter<?>> converterList = new ArrayList<>();
        for (HttpMessageConverter<?> converter : converters) {
            if (!converter.getClass().equals(MappingJackson2XmlHttpMessageConverter.class)) {
                converterList.add(converter);
            }
        }
        converters.clear();
        converters.addAll(converterList);
    }
    
}

注意 implements WebMvcConfigurer,测试有效

参考的:原文链接:https://blog.csdn.net/weixin_46441124/article/details/130865905

第二种解决方案(测试有效但是有其他问题)

继承了  WebMvcConfigurationSupport

@Override
    public void configureContentNegotiation(ContentNegotiationConfigurer configurer) {
        configurer.defaultContentType(MediaType.APPLICATION_JSON, MediaType.TEXT_XML, MediaType.APPLICATION_XML);
    }

测试有效,但是项目静态资源访问却不可以了。

有大佬知道可以留言一下为什么

参考:https://blog.csdn.net/LIUYEYEA/article/details/109626213

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐