idea通过本地自己的Tomcat启动,Tomcat日志是乱码的解决方案

这里写自定义目录标题

  • 欢迎使用Markdown编辑器
    • [1. 乱码情况](#1. 乱码情况)
    • [2. 解决IDEA中tomcat启动时出现的(淇℃伅)的解决办法](#2. 解决IDEA中tomcat启动时出现的(淇℃伅)的解决办法)

欢迎使用Markdown编辑器

参考文献:IDEA中控制台启动乱码(淇℃伅)的原因简单分析(写的非常好且非常详细)

这里只写出我和他遇到的问题和解决方法

1. 乱码情况

我们在使用IDEA的时候,项目通常会配置自己的tomcat,但是有时你会发现项目启动的时候控制台会报错,虽然说这个不会影响项目的运行,但是作为有强迫症的人来说,还是很难忍受这个乱码的。今天我们就来对这个现象做一个简单的探究。以下结果和现象都是本人在使用过程中出现的,每个人的情况可能都不同,希望能对大家有所帮助。

2. 解决IDEA中tomcat启动时出现的(淇℃伅)的解决办法

个人认为出现该现象的可能原因:IDEA内部是用UTF编码的,但是控制台显式的时候是用GBK解码的,这时我们再用GBK编码回去,用UTF-8解码就能正常了。即在下面第二条中修改编码为GBK。

注:如果乱码中没有问号?之类的符号,一般情况下原来的编码都没有破坏,只不过是一样的编码,用不同的方式解码造成的结果。

暂时还留有的疑问:如果IDEA中所有的编码都设置为了UTF(这里指UTF-8),为啥在控制台显式的时候会以GBK来解码,难道会转化为操作系统的默认语言的?以GBK编码回去,它能显示正常,说明最终控制台还是以UTF-8解码的。以下为个人猜想,还未经过验证,如果有知道的大佬,希望能指点一下这个地方

修改配置前:IDEA(UTF-8编码)---->tomcat(GBK解,UTF-8编)---->IDEA控制台(UTF-8解)

修改配置后:IDEA(UTF-8编码)---->tomcat(GBK解,GBK编)---->IDEA控制台(UTF-8解)

首先修改IDEA中所有的地方为UTF-8编码

参考文章:

https://blog.csdn.net/m0_38132361/article/details/80628203

在tomcat的conf/loggin.properties文件中追加(具体可以参考网上其它教程)

java.util.logging.ConsoleHandler.encoding = GBK

如果原来的是

java.util.logging.ConsoleHandler.encoding = UTF-8

则改为:

java.util.logging.ConsoleHandler.encoding = GBK

相关推荐
小小放舟、几秒前
@JsonCreator 注解详解——从枚举反序列化说起
spring boot·spring·spring cloud·java-ee·maven·intellij-idea·状态模式
ANnianStriver几秒前
PetLumina 08 — 通知系统与搜索功能修复(广播机制 + 已读状态 + 参数对齐)
java·ai·ai编程·广播机制
ggaofeng2 分钟前
试用zeroclaw
java·开发语言
就叫_这个吧7 分钟前
servlet整合tomcat项目启动报错解决,org.apache.tomcat.util.descriptor.web.WebXml.setVersion
java·servlet·tomcat·apache
Wenzar_7 分钟前
用 JAX 构建可微分光子神经网络仿真器
java·人工智能·深度学习·神经网络
cfm_291424 分钟前
RocksDB 初步了解
java
凡人叶枫31 分钟前
Effective C++ 条款02:宁可以编译器替换预处理器
java·linux·c语言·开发语言·c++
ANnianStriver33 分钟前
PetLumina 03 — 后端目录重构与 Web 管理后台搭建
java·前端·ai·重构·ai编程·claude code
一个儒雅随和的男子44 分钟前
限流算法详细剖析
java·服务器·算法
我是一颗柠檬1 小时前
【Java项目技术亮点】分布式锁实现与优化:从Redisson到ZooKeeper,彻底搞懂分布式锁的底层原理
java·redis·分布式·中间件·java-zookeeper