Spring-MVC在setContentType、setCharacterEncoding之后前台仍然乱码的问题

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/van_brilliant/article/details/79901852
  • 源代码:
@RequestMapping("getTime")
    @ResponseBody
    public String getTime(@RequestParam String format, HttpServletResponse response){
        response.setCharacterEncoding("UTF-8");
        response.setContentType("UTF-8");
        Date date = new Date();
        SimpleDateFormat df = new SimpleDateFormat (format);
        return df.format(date);
    }

  • 问题描述:
Controller里返回的是@ResponseBody普通字符串,已设置编码和header为utf-8,前台浏览器f12仍然未iso编码。
  • 解决方案:

在spring-mvc配置文建立加入:

<!-- 设置配置方案 -->
  <mvc:annotation-driven>
    <mvc:message-converters register-defaults="true">
      <!--设置返回普通字符串时的编码-->
      <bean class="org.springframework.http.converter.StringHttpMessageConverter">
        <constructor-arg value="UTF-8" />
      </bean>
    </mvc:message-converters>
  </mvc:annotation-driven>

猜你喜欢

转载自blog.csdn.net/van_brilliant/article/details/79901852
今日推荐