目录
2-默认的apache-tomcat-10.1.7没有更改编码相关的配置文件(logging.properties),
3-deepseek思路【按前文描述解决不了就灵活问deepseek!】
问题描述:
IDEA运行普通Java程序打印中文不出现乱码,
然而用Tomcat跑Servlet执行System.out.println("Servlet下中文测试")出现中文乱码,形如下图

解决方案:
Tomcat 启动时如果没有 -Dfile.encoding=UTF-8,默认编码在windows下是GBK。【如果不设置则jvm加载.class文件使用的是GBK,而我们.java文件是UTF-8编译到.class文件,jvm使用GBK解码utf-8的.class文件,自然会出现乱码】

我个人配置的IDEA使用了全局UTF-8的配置,GBK和UTF-8冲突,所以乱码,一般我们会让编码保持一致,如GBK和GBK,UTF-8和UTF-8这样。
在Tomcat启动配置中添加
-Dfile.encoding=UTF-8
形如下图


测试证明有效:

上述解决方案依赖的具体场景:
1-IDEA全局设置了UTF-8编码

2-默认的apache-tomcat-10.1.7没有更改编码相关的配置文件(logging.properties),

#默认配置
java.util.logging.ConsoleHandler.encoding = UTF-8

3-deepseek思路【按前文描述解决不了就灵活问deepseek!】

视频解释【注意看17分钟左右】:
085.乱码问题_HTML_Tomcat日志_sout乱码问题_哔哩哔哩_bilibili
象漂亮更新动力!
欢迎大家点赞、收藏、关注、评论、批评啦
299

被折叠的 条评论
为什么被折叠?



