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