java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > SpringBoot响应Json数据乱码通过配置

SpringBoot响应Json数据乱码通过配置的解决

作者:霸道流氓气质

这篇文章主要介绍了SpringBoot响应Json数据乱码通过配置的解决,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

场景

实现

把SpringBoot的response编码设置为utf-8

找到application.properties配置文件

添加如下:

#设置响应为utf-8
spring.http.encoding.force-response=true

再次刷新浏览器

SpringBoot返回json数据乱码

第一种解决方式

在请求RequestMapping直接设置,只针对请求,在拦截器返回json数据时有可能乱码

@RequestMapping(value ="/user", produces="application/json;charset=UTF-8")

第二种方式

不一定有效

#解决@ResponseBody中文乱码问题
spring:  
  http:
    encoding:
      force: true

第三种完美解决

实现WebMvcConfigurer接口

@Configuration
public class WebAppConfigurer implements WebMvcConfigurer {
 @Bean
    public HttpMessageConverter responseBodyConverter(){
  //解决返回值中文乱码
        StringHttpMessageConverter converter = new StringHttpMessageConverter(Charset.forName("UTF-8"));
        return converter;
    }
 
 @Override
 public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
  converters.add(responseBodyConverter());
 }
}

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文