Tomcat 9.0.41在IDEA中乱码问题(IntelliJ IDEA 2022.1.3版本)

1. 乱码的产生是由于编码和解码的编码表不一致引起的。

2. 排查乱码原因

2.1 服务器输出乱码

在idea中启动Tomcat时服务器输出乱码排查:

首先查看IDEA控制台,检查发现默认编码是GBK。

再查看Tomcat日志(conf文件下logging.properties)的默认编码方式是UTF-8:

2.1.1 第一种方式在idea的控制台上修改:让它和tomcat输出日志编码方式一致都是UTF-8。

这样是能解决输出日志乱码的问题:

但是又产生了另一个问题,Tomcat在电脑单独启动时由于window系统默认GBK码表解码的,所以又会导致在电脑上Tomcat使用dos命令启动时又产生了乱码。最重要的是在idea上java输出语句,因为这样的修改含有中文的输出语句都会乱码。

这需要你的IDEA保证文件编码也是UTF-8,如下:

2.1.2 第二种只在Tomcat修改配置文件,把51这一行的UTF-8改为GBK。保存后重新启动idea。

2.2 Tomcat Catalina 日志乱码

2.2.1 方案一

把conf文件夹下的logging.properties文件中的catalina的编码格式从UTF-8改成GBK,然后重启Tomcat。

这个修改的内容最少,方便多啦:

2.2.2 方案二

然后重启IDEA,

再重启tomcat。

3. 另一种方法需要重启IDEA

java 复制代码
-Dfile.encoding=UTF-8

JAVA_TOOL_OPTIONS

重启IDEA:

相关推荐
友莘居士26 分钟前
创建信任所有证书的HttpClient:Java 实现 HTTPS 接口调用,等效于curl -k
java·开发语言·https·httpclient·curl -k
abc小陈先生1 小时前
JUC并发编程1
java·juc
飞飞9871 小时前
spring mvc
java·服务器·前端
贺函不是涵1 小时前
【沉浸式求职学习day47】【JSP详解】
java·开发语言·学习
曼岛_1 小时前
[Java实战] Docker 快速启动 Sentinel 控制台(二十八)
java·docker·sentinel
旋风菠萝2 小时前
八股--SSM(2)
java·开发语言·数据库·八股·八股文·复习
攻心的子乐2 小时前
Flyweight(享元)设计模式 软考 享元 和 代理属于结构型设计模式
java·开发语言
设计师小聂!2 小时前
Seata分布式事物案例及详解
java·spring·spring cloud
编程乐学(Arfan开发工程师)2 小时前
16、最佳实践-SpringBoot应用如何编写
java·spring boot·后端
取个好名称2 小时前
适合初学者的 Blender 第二部分
java·前端·blender