SpringBoot 返回字符串,中文乱码

本文讲述了如何由于编码设置不当导致的HTTP请求问题,通过在Spring MVC控制器中添加produces属性设置UTF-8编码,解决了从ISO编码到UTF-8转换的问题。作者还提到了尝试修改Tomcat配置但未成功的情况,以及项目的默认服务器推断。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原因

其实就是因为没有设置他的编码格式为UTF-8,看了下默认的请求编码方式就是ISO编码的,因此改下编码即可

解决方式

加入一个produces 属性即可,网上说的yml配置文件修改tomcat的编码方式为UTF8我试过了不行,因为它默认就是UTF8,显然这里并不是控制的controller返回。当然,我没有确认自己项目中的服务器是否是tomcat,反正我的pom文件没有排除该依赖,应该是默认使用的tomcat服务器(据说有版本默认使用的服务器已经不是tomcat了)

  @GetMapping(value = COURSE_INTRODUCE, produces = "text/html;charset=UTF-8")
  public String getCourseIntroduce(@Validated CourseDetailRequest request) {
        try {
            return courseInfoService.getIntroduce(request);
        } catch (Exception e) {
            this.getFailResponse("獲取课程介绍失敗", e, log, Thread.currentThread().getStackTrace()[1].getMethodName(), request);
            return "";
        }
  }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值