设置Java环境(Apache Tomcat)以编码UTF-8

时间:2011-09-27 09:23:15

标签: java jsp tomcat utf-8


我想知道如何设置Java环境以UTF-8编码。
基本上我有一些JSP页面显示有一些阿拉伯文字,但它们似乎没有正确的编码。
当我在IDE中运行页面时,它工作正常,但在它们是主机的服务器上,它很简单地将其显示为问号。我只是想知道如何设置java环境或apache tomcat来编码UTF-8。
任何帮助将不胜感激。

3 个答案:

答案 0 :(得分:23)

您有一些具有不同影响级别的常规设置:

(1)配置您的JSP页面以在utf-8中显示内容(位于jsp页面的顶部

<%@page pageEncoding="utf-8" %>

(2)将默认字符编码设置为utf-8(java system property

-Dfile.encoding="utf-8"

(3)将您的应用服务器配置为在utf-8中编码请求参数(在conf/server.xml中)

<connector .... URIEncoding="utf-8" />

(4) Tell browser内容位于utf-8(位于html HEAD部分)

<meta http-equiv='Content-Type' content='text/html; charset=UTF-8' />

答案 1 :(得分:4)

您必须编辑/config/web.xml 取消注释此过滤器: setCharacterEncodingFilter

<!-- A filter that sets character encoding that is used to decode -->
<!-- parameters in a POST request -->
<filter>
    <filter-name>setCharacterEncodingFilter</filter-name>
    <filter-class>org.apache.catalina.filters.SetCharacterEncodingFilter</filter-class>
    <init-param>
        <param-name>encoding</param-name>
        <param-value>UTF-8</param-value>
    </init-param>
</filter>

<!-- The mapping for the Set Character Encoding Filter -->
<filter-mapping>
    <filter-name>setCharacterEncodingFilter</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

答案 2 :(得分:0)

在您的项目目录中: 你必须在这个foler中有一个名为'font'的文件夹复制阿拉伯字体,这也将带你到服务器上字符的路径....