IDEA + Tomcat 8.5中文乱码解决过程

勤奋不是嘴上说说而已,而是实际的行动,在勤奋的苦度中持之以恒,永不退却。业精于勤,荒于嬉;行成于思,毁于随。在人生的仕途上,我们毫不迟疑地选择勤奋,她是几乎于世界上一切成就的催产婆。只要我们拥着勤奋去思考,拥着勤奋的手去耕耘,用抱勤奋的心去对待工作,浪迹红尘而坚韧不拔,那么,我们的生命就会绽放火花,让人生的时光更加的闪亮而精彩。

导读:本篇文章讲解 IDEA + Tomcat 8.5中文乱码解决过程,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

说明

本文讲述的博主遇到的乱码问题比较怪异(可以说是四年开发生涯中最难搞的一个,前前后后浪费折腾不下4~5小时),很可能并不能解决你的问题,但是给出的经验很重要,或许可以给你一些启发。

大佬勿喷。

问题

即现象:

  1. HTML页面中文乱码;
  2. IDEA console部分乱码,具体说来:
20-Sep-2020 18:36:55.802 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Server.服务器版本: Apache Tomcat/8.5.55
2020-09-20 18:37:16.217 [http-nio-8080-exec-9] ERROR org.ppdai.security.service.LocalSecurityFilter - 涓嶅簲璇ヨ繘鏉ョ殑 not welcome sessionId:wangjian14_1600595004182_1158a28c-dbca-4a2d-bd7c-796f812b4ca5 ,res={"success":false,"key":"wangjian14_1600595004182_1158a28c-dbca-4a2d-bd7c-796f812b4ca5"}

即,tomcat的启动日志正常,但是应用日志的中文乱码。

解决

HTML页面中文乱码

首先贴出我的Chrome版本号:
在这里插入图片描述
在这里插入图片描述
一开始也是各种瞎搜索,乱折腾……无外乎网上那些方案。

但是

尝试过各种不同的解决方案之后,始终解决不了我的问题(当然是在瞎鸡巴尝试过程,即浪费时间的过程中得到的结论):

  1. 只有我有这个问题,其他同事都是正常;
  2. 发现IE以及Firefox浏览器正常,只有Chrome有乱码问题;
  3. 只有首页乱码,Chrome登录进去之后,其他有中文字符的页面全部正常,没有乱码问题;

至此,不再相信网上各种乱七八糟的解决方案,都是在浪费时间,和自己遇到的问题并不完全一致。

定位到问题是Chrome之后,Google(也试过百度)搜索:更改Chrome浏览器编码设置,选择时间为近一年,又是千篇一律的抄来抄去的解决方案,安装插件charset(chrome app市场搜索关键词),尝试的插件包括但不限于:

  • Webpage Default Encoding Changer
  • charset
  • 网页编码修改(Charset)

依旧还是不能解决我的问题。

并没有解决问题,只是绕过问题:使用Firefox

IDEA console部分乱码

修改IDEA文件idea64.exe.vmoptions末尾添加一行:-Dfile.encoding=UTF-8
保存并重启IDEA,现象:

20-Sep-2020 18:26:39.815 ��Ϣ [main] org.apache.catalina.startup.VersionLoggerListener.log Server.�������汾: Apache Tomcat/8.5.55
2020-09-20 18:27:00.939 [http-nio-8080-exec-6] ERROR org.ppdai.security.service.LocalSecurityFilter - 不应该进来的 not welcome sessionId:wangjian14_1600595004182_1158a28c-dbca-4a2d-bd7c-796f812b4ca5 ,res={"success":false,"key":"wangjian14_1600595004182_1158a28c-dbca-4a2d-bd7c-796f812b4ca5"}

即,虽然能够解决应用日志的中文乱码问题,但是tomcat的启动日志中文乱码。

不过,console里面的Tomcat启动日志乱码也无关紧要,保证应用日志正常即可。

时间和精力原因,不再继续研究两个并未解决完全的问题(只是绕过问题)。

经验

  1. 需要区分到底是IDEA console乱码还是HTML文件乱码;
  2. 只有自己有这个问题,还是其他人都有这个问题;
  3. 如果安装有STS(spring tool suite),可以考虑换STS看看是不是也有乱码问题;
  4. 针对HTML乱码,第一步考虑换用浏览器,看是不是普遍的问题,即其他浏览器也有乱码问题,如果是的,说明大概率是HTML页面编码问题;如果不是,则是浏览器的编码问题;
  5. 针对IDEA console乱码问题,需要确定是Tomcat启动日志乱码还是应用记录日志乱码;
  6. 理论上,如果是Tomcat启动日志乱码,需要更改Tomcat编码设置;相应的,如果是应用记录日志乱码,则需要更改IDEA的编码设置;
  7. 很特殊的,我遇到的IDEA console乱码问题,分两部分:Tomcat正常,但是应用记录日志乱码。更改idea64.exe.vmoptions配置文件之后,应用记录日志正常,但是Tomcat又乱码了。此时我又尝试去设置Tomcat编码,但是依然没有解决Tomcat乱码问题,不过我已经忽略了。
  8. 时间值不值得浪费在这个上面,即是否必须要解决(当然指的是比如我这种几小时还搞不定的case)。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/142260.html

(0)
飞熊的头像飞熊bm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!