千家信息网

spring boot 解决后台返回json到前台中文乱码之后出现返回json数据报错饭怎么办

发表于:2025-11-21 作者:千家信息网编辑
千家信息网最后更新 2025年11月21日,这篇文章给大家介绍spring boot 解决后台返回json到前台中文乱码之后出现返回json数据报错饭怎么办,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。spring boo
千家信息网最后更新 2025年11月21日spring boot 解决后台返回json到前台中文乱码之后出现返回json数据报错饭怎么办

这篇文章给大家介绍spring boot 解决后台返回json到前台中文乱码之后出现返回json数据报错饭怎么办,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

spring boot 解决后台返回 json 到前台中文乱码

spring boot 解决后台返回 json 到前台中文乱码,报错 500:no convertter for return value of type,中文返回给浏览器乱码 解析成问号??

详细错误信息Failed to write HTTP message: org.springframework.http.converter.HttpMessageNotWritableException:No converter found for return value of type: class www.it399.com.controller.file.ResultBean

后台返回 json 到前台中文乱码解决办法

一、解决中文乱码的配置


@Configuration

@EnableWebMvc

@ComponentScan

public class MvcConfiguration extends WebMvcConfigurerAdapter {


@Bean

public HttpMessageConverter responseBodyConverter(){

StringHttpMessageConverter converter = new StringHttpMessageConverter(Charset.forName("UTF-8"));

return converter;

}


@Override

public void configureMessageConverters(List> converters) {

super.configureMessageConverters(converters);

//解决中文乱码

converters.add(responseBodyConverter());

//解决 添加解决中文乱码后 上述配置之后,返回json数据直接报错 500:no convertter for return value of type

converters.add(messageConverter());

}


}

二、除了上述配置之后还有添加MappingJackson2HttpMessageConverter


@Bean

public MappingJackson2HttpMessageConverter messageConverter() {

MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter();

converter.setObjectMapper(getObjectMapper());

return converter;

}

注意:responseBodyConverter和MappingJackson2HttpMessageConverter如果分开配置要确保前者不被覆盖,不然就会出现返回springboot返回json正常,但是返回中文乱码,或者返回中文不乱吗,但是返回对象或者json异常。

三、解决springboot范湖中文乱码和返回json 500错误的完整代码


/**

* spring boot 解决后台返回 json 到前台出现中文乱码的问题

* http://www.it399.com/blog/index.jsp

*/

@Configuration

@EnableWebMvc

@ComponentScan

public class MvcConfiguration extends WebMvcConfigurerAdapter {


@Bean

public HttpMessageConverter responseBodyConverter(){

StringHttpMessageConverter converter = new StringHttpMessageConverter(Charset.forName("UTF-8"));

return converter;

}

@Bean

public ObjectMapper getObjectMapper() {

return new ObjectMapper();

}

@Bean

public MappingJackson2HttpMessageConverter messageConverter() {

MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter();

converter.setObjectMapper(getObjectMapper());

return converter;

}


@Override

public void configureMessageConverters(List> converters) {

super.configureMessageConverters(converters);

//解决中文乱码

converters.add(responseBodyConverter());

//解决 添加解决中文乱码后 上述配置之后,返回json数据直接报错 500:no convertter for return value of type

converters.add(messageConverter());

}


}

关于spring boot 解决后台返回json到前台中文乱码之后出现返回json数据报错饭怎么办就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

0