一些UTF-8字符在我的春季注释控制器中显示为问号



当我在sysout中显示此字符时,所有方法都可以正常工作,并且正确显示字符正确。但是,当我在弹簧注释控制器中放置完全相同的sysout时,它会显示问号。这是代码

system.out.println("əışçğ");

请记住,我只是在控制器中放置静态数据以显示它。没有任何协议或表单提交发送数据。我只是将Sysout代码放在控制器上,这给了我一堆问号。请帮助

事先感谢您的帮助

一种可能性是字符以不同的字体显示。并非所有字体都支持所有UTF-8字符。我最近与Arial一起遇到了这一点,该Arial Unicode MS未安装,客户默认为Arial。

将其放在您的web.xml和Redeploy

  <filter>
        <filter-name>encoding-filter</filter-name>
        <filter-class>
            org.springframework.web.filter.CharacterEncodingFilter
        </filter-class>
        <init-param>
            <param-name>encoding</param-name>
            <param-value>UTF-8</param-value>
        </init-param>
        <init-param>
        <param-name>forceEncoding</param-name>
        <param-value>true</param-value>
        </init-param>
    </filter>
    <filter-mapping>
        <filter-name>encoding-filter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

将其添加到您的MAVN中,然后在构建和重新部署后重试。顺便说一句,哪个使用??

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    ...
</properties>

最新更新