在Windows中更改Tomcat的Charset.defaultCharset

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

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

输出是:

 windows-1253 

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

那么,我怎样才能将其更改为UTF-8?

谢谢

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

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

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

截图

来自James Bayley博士的博客

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

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

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

然后它工作。

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

将从此链接获得更多想法: 设置默认的Java字符编码