IntelliJ IDEA运行tomcat项目中文乱码问题

现象 

 今天商城项目,调用第三方接口,用的idea。   httpclient方式,返回的json串中有中文乱码。

IntelliJ IDEA运行tomcat项目中文乱码问题_第1张图片

IntelliJ IDEA运行tomcat项目中文乱码问题_第2张图片

------------ ------ ---------------

发现   

1.同样的代码在eclispe中运行没有问题。

2.单元测试(没在servlet容器(tomcat)中运行)的时候也没有问题。

---------------------------------------------

httpclient请求编码什么的,都是做好的。(开始以为是这的问题,各种设置尝试)

IntelliJ IDEA运行tomcat项目中文乱码问题_第3张图片

--------------------

解决办法:

1.Run/Debug Configuration -> Tomcat Server -> Tomcat 7, 在VM Options里面加上 -Dfile.encoding=UTF-8 并应用


IntelliJ IDEA运行tomcat项目中文乱码问题_第4张图片

以上更改后, 控制台输出会乱码, 

IntelliJ IDEA运行tomcat项目中文乱码问题_第5张图片


2.将IDEA的启动环境也配成UTF-8, 在IDEA安装目录下, 打开 idea64.exe.vmoptions , 最后一行加上 -Dfile.encoding=UTF-8

IntelliJ IDEA运行tomcat项目中文乱码问题_第6张图片


IntelliJ IDEA运行tomcat项目中文乱码问题_第7张图片

IntelliJ IDEA运行tomcat项目中文乱码问题_第8张图片

控制台和代码中(前台显示)都好。

----------------------

大概原因:

idea rpc访问的时候(我是httpclient调用,有网友是dubbo调用) ,IDEA里配置的Tomcat. 凡是在tomcat里启动的java应用, 不管源码是什么编码, 运行后都是GBK.



你可能感兴趣的:(idea)