设置Springboot默认json解析器,及浏览器查看接口中文乱码问题解决

 给springboot设置t默认json解析器,最简单方式如下:

@Configuration
public class WebAppConfigurer implements WebMvcConfigurer {

/**
 * 设置默认json解析器
 */
@Override
public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
    // 创建FastJson信息转换对象
    FastJsonHttpMessageConverter fastJsonHttpMessageConverter = new FastJsonHttpMessageConverter();
    converters.add(0, fastJsonHttpMessageConverter);
}
   ....
}

 

这样改完后,用浏览器请求接口,发现中文都乱码了,所以要再优化下:

@Configuration
public class WebAppConfigurer implements WebMvcConfigurer {

/**
 * 设置默认json解析器
 */
@Override
public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
    // 创建FastJson信息转换对象
    FastJsonHttpMessageConverter fastJsonHttpMessageConverter = new FastJsonHttpMessageConverter();
    // 创建Fastjosn对象并设定序列化规则
    FastJsonConfig fastJsonConfig = new FastJsonConfig();
    fastJsonConfig.setSerializerFeatures(SerializerFeature.PrettyFormat);
    fastJsonHttpMessageConverter.setFastJsonConfig(fastJsonConfig);
    // 中文乱码解决方案
    List<MediaType> mediaTypes = new ArrayList<>();
    mediaTypes.add(MediaType.APPLICATION_JSON_UTF8);    // 设定json格式且编码为UTF-8
    fastJsonHttpMessageConverter.setSupportedMediaTypes(mediaTypes);
    converters.add(0, fastJsonHttpMessageConverter);
}
   ....
}

 

SerializerFeature.PrettyFormat可以使输出的json格式化,更方便查看。

 序列化规则的设置可以参考:

https://blog.csdn.net/u010246789/article/details/52539576

为了解决中文乱码问题,这里我们要设置编码格式为UTF-8

 

也可以通过以下方式设置:

    @Bean
    public HttpMessageConverters fastJsonHttpMessageConverters(){}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值