在Tomcat中运行java web项目时,有时候项目需要指定当前的运行环境的默认环境编码为UTF-8,但是又不想设置系统的全局的环境变量,如果设置了系统的环境变量,可能会对其他运行在系统中的其他web项目产生影响,所以最好的办法是指定所需要的项目的环境的编码以完成自己的需求。
一、若真想设置全局变量改变默认编码可以在系统环境变量中添加键值(此方法一定会生效,因为是系统级别的):
JAVA_TOOL_OPTIONS -Dfile.encoding=UTF-8
二、下面的方法是不设置系统的全局变量,而是只影响当前web运行环境中的Tomcat的运行环境的方法:
1、在Tomcat的bin目录文件中的service.bat、setclasspath.bat中打开文件在最前面的bat代码中添加:
set JAVA_HOME=jdk1.7V
set JRE_HOME=jdk1.7V\jre
set "JAVA_OPTS=%JAVA_OPTS% %LOGGING_CONFIG% -Dfile.encoding=UTF-8"
我使用的是相对路径,也就是说我把jdk的运行代码文件也放在了Tomcat的bin目录中,所以直接可以使用相对路径,当然你也可以使用绝对路径进行配置jdk的指定位置。
2、我使用的是jdk1.7,Tomcat7。
不设置前的测试代码运行结果:
设置之后的测试代码的运行结果: