在Windows中更改Tomcat的Charset.defaultCharset

时间:2012-07-05 10:54:40

标签: java tomcat servlets character-encoding tomcat6

我在Windows 7中使用tomcat 6.0.32。 在一个非常简单的servlet中,在init方法中,我正在打印:

System.out.println(Charset.defaultCharset());

输出结果为:

windows-1253

据我所知,这是tomcat在JVM中的启动方式,因为我在独立的java类中打印相同的内容,并且我将“UTF8”作为响应。

那么,如何将其更改为UTF-8?

感谢

4 个答案:

答案 0 :(得分:39)

只需在TOMCAT / bin目录中创建一个 setenv.bat 文件,其中包含以下内容:

set "JAVA_OPTS=%JAVA_OPTS% -Dfile.encoding=UTF8"

答案 1 :(得分:14)

您也可以在Tomcat 7.0 Windows服务管理器中添加此设置。

screenshot

来自Dr James Bayley's blog

答案 2 :(得分:6)

对于作为Windows服务运行的Tomcat,%JAVA_OPTS%和setenv.bat都不适用于我的情况。

我在注册表中设置选项“-Dfile.encoding = UTF8”:

“HKEY_LOCAL_MACHINE \ SOFTWARE \ Apache Software Foundation \ Procrun 2.0 \ tomcatstackTomcat \ Parameters \ Java - > Options *

然后它有效。

答案 3 :(得分:2)

尝试将(Windows)环境变量JAVA_TOOL_OPTIONS设置为-Dfile.encoding=UTF-8并启动Tomcat Server

将从此链接获得更多想法: Setting the default Java character encoding