关于响应输出的中文乱码问题

关于响应输出的中文乱码问题

<mvc:message-converters>
        <bean class="org.springframework.http.converter.StringHttpMessageConverter">
            <property name="supportedMediaTypes">
                <list>
                    <value>text/html;charset=utf-8</value>
                </list>
            </property>
        </bean>
    </mvc:message-converters>

上面这个Spring MVC解决响应的中文乱码是只针对 jsp模板和@ResponseBody吗?

<bean id="ViewResolver" class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">
    <property name="contentType" value="text/html;charset=utf-8"/>
    <property name="suffix" value=".ftl"/>
</bean>

同样是返回给客户端浏览器的数据,都是告诉浏览器采用什么样的字符集,两者是否有重复和冲突?

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

同学你好,1、上方是配置消息转换器,主要用于返回的数据的类型。该并不是针对jsp模板和@ResponseBody的。主要针对的是我们返回的数据,将我们返回的数据转换为什么类型的格式发给客户端。

    2、而下方代码是配置视图解析器,也就是根据控制器方法返回的视图名称来解析和渲染实际的视图模板,主要是针对ftl文件的。两者是没有冲突的。

祝学习愉快!

  • 坨坨儿 提问者 #1

    老师的解释是消息转换器是响应层面的总开关,视图解析器是针对ftl的二级开关,但实际上不配置消息转换器,只配置视图解析器,也能正常响应中文,感觉视图解析器已经包含了消息转换器

    2024-03-25 10:28:03
  • 好帮手慕小尤 回复 提问者 坨坨儿 #2

    同学你好,同学可以这么理解,因在视图解析时,我们也有进行配置,所以当数据返回给视图时也会进行转换。

    祝学习愉快!

    2024-03-25 11:23:56
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
Java工程师 2024版
  • 参与学习       2024    人
  • 提交作业       1318    份
  • 解答问题       1228    个

2024重磅革新,超百小时内容豪华升级,加速提升高级技能与高薪就业竞争力 课程紧贴企业最新人才需求,历经7年持续迭代,帮助万名学子入行转行 从零起点到高阶实战,学习路径稳健顺滑,成就从小白到工程师高薪

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师