IDEA亂碼Tomcat控制台亂碼輸出亂碼報文亂碼


電腦重裝系統后,重新安裝了最新版的IDEA 2019.2.2,出現亂碼。百度了很多,慢慢的解決了亂碼的問題,現記錄如下。方法因人而異,不同的問題不一樣的方法。

第一 修改IDEA文件編碼格式

設置idea文件編碼格式

第二 IDEA中配置Tomcat

配置Tomcat時,VM options填入-Dfile.encoding=UTF-8

第三 修改IDEA的配置文件

IDEA的配置文件,找到idea64.exe.vmoptions或idea.exe.vmoptions,打開在最后添加-Dfile.encoding=UTF-8

第四 打印輸出亂碼、返回數據亂碼

都改好了,還是發現System.out.print("中文")打印到控制台是亂碼,接口返回的數據中文也是亂碼(配置了encodingFilter也不行)。如果你是maven工程,那么在你pom.xml文件添加如下代碼

  <properties>
    <!-- 設置項目編碼 -->
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
  </properties>

第五 Tomcat控制台亂碼修改Tomcat配置文件

java.util.logging.ConsoleHandler.encoding 改為 UTF-8,需第三步配合。

第六 Tomcat server.xml

如果請求亂碼,請考慮在箭頭處添加 URIEncoding=“UTF-8” 

代碼中規定了Tomcat監聽HTTP請求的端口號等信息。在這里添加了一個屬性:URIEncoding。

將該屬性值設置為UTF-8,即可讓Tomcat(默認ISO-8859-1編碼)以UTF-8的編碼處理get請求,避免中文亂碼問題。

 第七 Tomcat升級后打印log亂碼

如果是你升級后亂碼了,不用第五步第三步了。看Tomcat的日志配置文件,tomcat/conf/logging.properties 這個文件就是tomcat的日志配置文件,只需要修改這個文件。tomcat在新版的日志配置文件中加了指定編碼為UTF-8的配置。這就是亂碼的根源了。

  • 將配置UTF-8那一行配置刪除(這樣應該就是采用操作系統默認編碼,Windows下即為GBK)
  • 或不刪除,將UTF-8改為GBK

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM