解决Spring MVC @ResponseBody出现问号乱码问题

    xiaoxiao2025-04-15  9

    这两天做项目又出现乱码的问题,后台打印的结果是正常的,但是前台却出现问号乱码,经过在网上查找资料很快就解决了。原因是SpringMVC的@ResponseBody使用的默认处理字符串编码为ISO-8859-1,而我们前台或者客户端的编码一般是UTF-8或者GBK。现将解决方法分享如下!

    第一种方法: 对于需要返回字符串的方法添加注解,如下: @RequestMapping(value="/getUser", produces = "application/json; charset=utf-8")  public String getUser() throws Exception  {    User user = new User();    user.setName("小明");    user.setHobby("游泳");    return new Gson().toJson(user);  } 但是这种解决方法只对单个方法起作用! 第二种方法: 在SpringMVC的配置文件中加入: <mvc:annotation-driven>    <mvc:message-converters register-defaults="true">     <bean class="org.springframework.http.converter.StringHttpMessageConverter">       <property name="supportedMediaTypes" value = "text/plain;charset=UTF-8" />     </bean>    </mvc:message-converters> </mvc:annotation-driven>
    转载请注明原文地址: https://ju.6miu.com/read-1298104.html
    最新回复(0)