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:

相关推荐
lkbhua莱克瓦243 分钟前
进阶-存储对象2-存储过程上
java·开发语言·数据库·sql·mysql
杨杨杨大侠7 分钟前
深入理解 LLVM:从编译器原理到 JIT 实战
java·jvm·编译器
qq_3363139323 分钟前
java基础-IO流(随机点名器)
java·开发语言·python
brave_zhao31 分钟前
launch4j亲测打包java的jar转为exe执行文件
java
利刃大大32 分钟前
【RabbitMQ】SpringBoot整合RabbitMQ:工作队列 && 发布/订阅模式 && 路由模式 && 通配符模式
java·spring boot·消息队列·rabbitmq·java-rabbitmq
lkbhua莱克瓦2432 分钟前
进阶-存储对象1-视图
java·数据库·sql·mysql·视图
yangminlei35 分钟前
Spring Boot 自动配置原理与自定义 Starter 开发实战
java·数据库·spring boot
悟空码字36 分钟前
10分钟搞定!SpringBoot集成腾讯云短信全攻略,从配置到发送一气呵成
java·spring boot·后端
爱编程的小吴38 分钟前
【力扣练习题】151. 反转字符串中的单词
java·算法·leetcode
未来龙皇小蓝1 小时前
Spring注入Bean流程及其理解
java·spring boot·后端·spring·代理模式