問題:
最近在部署項目的時候出現數據亂碼的情況,經過一番查看項目都是用的UTF-8編碼格式,數據也是,但是經過調用接口傳給對方就亂碼了。
由于是部署在Windows環境下,Windows默認編碼GBK,這就導致了jvm運行時編碼不一致的問題,修改也很容易。
解決辦法:
Linux環境下如果使用的UTF-8編碼,可以不用修改,因為Linux默認為UTF-8
war包部署在Tomcat
修改jvm編碼
Linux環境
在catalina.sh配置
JAVA_OPTS="$JAVA_OPTS -Dfile.encoding=utf-8"
由于Windows環境下默認的編碼格式為GBK,所以要修改Tomcat運行時編碼格式。
Windows環境
在catalina.bat配置
set JAVA_OPTS=%JAVA_OPTS% -Dfile.encoding=UTF-8
如果是jar包部署,只需要在啟動命令加入jvm參數即可。
jar包部署
啟動命令加入jvm參數
java -Dfile.encoding=UTF-8 -jar xxx.jar
總結
以上所述是小編給大家介紹的修改Tomcat運行時jvm編碼問題,希望對大家有所幫助!