SpringBoot mvc返回中文会变问号

SpringBoot mvc返回中文会变成?

排查分析

目前中文返回会变成问号? 问题原因是字符集的问题,我没有找到问题的源点,但是经过排查我发现在preHandler的生命周期的时候的确成功设置为UTF-8,但是在这个生命周期结束却变成了ISO-8859-1,我不知道如何制造的, 估计是某些第三方jar包导致目前解决方案是

解决方案A

在RequestMapping设置当前controller字符集,我也尝试过在WebMvcConfig设置全局字符集,但是这样会导致有的接口出现500 MVC无法自动转换为JSON,但是手动转换为JSON的格式确是可以得到解决,这个经历可以进一步帮我们改进。

@RestController
@RequestMapping(value = "/channels",produces = "text/plain;charset=UTF-8")
public class ChannelsController

解决方案B

使用这个方法需要手动转json,不能直接返回对象,因为这个方法会覆盖掉 Spring MVC 默认的 JSON 转换器

package com.gsxy.filesystemserver.config;

import com.gsxy.filesystemserver.intercept.AuthorizationInterceptor;
import org.springframework.context.annotation.Configuration;
import org.springframework.http.converter.HttpMessageConverter;
import org.springframework.http.converter.StringHttpMessageConverter;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

import java.nio.charset.Charset;
import java.util.List;

@Configuration
@EnableWebMvc
public class WebMvcConfig implements WebMvcConfigurer {

    /**
     * 解决中文返回都是问号
     * @param converters
     */
    @Override
    public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
        StringHttpMessageConverter converter = new StringHttpMessageConverter(Charset.forName("UTF-8"));
        converters.add(converter);
    }
}

相关推荐

  1. SpringBoot mvc返回中文

    2024-03-15 05:08:04       43 阅读
  2. Excel中文显示

    2024-03-15 05:08:04       44 阅读
  3. select *查询不返回密码

    2024-03-15 05:08:04       59 阅读
  4. 每日一水:leetcode1576.替换所有的

    2024-03-15 05:08:04       62 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-15 05:08:04       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-15 05:08:04       106 阅读
  3. 在Django里面运行非项目文件

    2024-03-15 05:08:04       87 阅读
  4. Python语言-面向对象

    2024-03-15 05:08:04       96 阅读

热门阅读

  1. 旅游市场游客满意度调查报告

    2024-03-15 05:08:04       35 阅读
  2. 视觉语言导航

    2024-03-15 05:08:04       37 阅读
  3. Winform编程详解二:Button 按钮

    2024-03-15 05:08:04       40 阅读
  4. thinkphp6.1~8.0 快速创建CRUD

    2024-03-15 05:08:04       37 阅读
  5. 高德地图2025届算法笔试3.12

    2024-03-15 05:08:04       41 阅读
  6. 计算机视觉

    2024-03-15 05:08:04       37 阅读
  7. Linux——GlusterFS分布式文件系统群集

    2024-03-15 05:08:04       30 阅读
  8. OpenCV亮度对比度调节

    2024-03-15 05:08:04       39 阅读