zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    node体验
    JS练习--prototype的一道题目
    JS的OOP--继承之prototype
    JS的OOP--new一个function背后的实际操作
    JS中new运算符的运算顺序
    thymeleaf 拼接字符串与变量
    spring jpa exists
    LocalDateTime json格式化
    格式化java8 LocalDateTime
    springboot定时任务
  • 原文地址:https://www.cnblogs.com/ibigboy/p/11519412.html
Copyright © 2011-2022 走看看