我想知道如何设置Java环境以UTF-8编码。
基本上我有一些JSP页面显示有一些阿拉伯文字,但它们似乎没有正确的编码。
当我在IDE中运行页面时,它工作正常,但在它们是主机的服务器上,它很简单地将其显示为问号。我只是想知道如何设置java环境或apache tomcat来编码UTF-8。
任何帮助将不胜感激。
答案 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'的文件夹复制阿拉伯字体,这也将带你到服务器上字符的路径....