tomcat引起的控制台中文乱码问题详解

omcat引起的中文乱码问题
tomcat引起的两种中文乱码问题
1.tomcat控制台日志乱码
2.tomcat控制台页面打印输出乱码


tomcat引起的两种中文乱码问题
平时在使用tomcat做一些服务的时候经常遇到各种乱码问题,要么是控制台输出乱码或者输出日志乱码,要么页面接收乱码,引起乱码的原因有多个,现总结一下分享给大家

1.tomcat控制台日志乱码
这个问题的原因是windows认编码集为GBK,由于使用startup.bat启动tomcat时,它会读取catalina.bat的代码并打开一个新窗口运行。打开的cmd认编码可能不是utf-8,与系统编码不一致,所以导致乱码。所以tomcat的命令框和输出日志都是乱码

修改cmd命令行的编码 :
打开注册表,找到HKEY_CURRENT_USER→Console→Tomcat
找到CodePage项,没有则创建,更改值为十进制的65001
修改logging.properties配置 :
打开tomcat/conf/logging.properties
添加语句:java.util.logging.ConsoleHandler.encoding = GBK
重启tomcat,查看日志数据即可
2.tomcat控制台页面打印输出乱码
server.xml配置未注明编码格式 :
浏览器本身有自己的显示编码格式,tomcat的输出也有自己的格式,甚至我们在编写代码的过程中也可以指定输出的编码格式。所以这类原因导致的乱码,需要我们保持各种编码格式统一:
在tomcat中将server.xml 的我们所用的端口的配置添加URIEncoding=“UTF-8”

 

 

在html的标签加上Meta标签

 

 

最好在编程中输出页面的时候指定编码为UTF-8
catalina.bat的配置问题 :
在\tomcat\bin\catalina.bat这个配置文件加上set JAVA_OPTS=-Dfile.encoding=UTF-8
编译工具 :
在IDEA编译器中的tomcat VM options:设置-Dfile.encoding=UTF-8,或eclipse 的设置中改成utf-8 输出的问题可以解决

 

 

注意事项 :(在tomcat中将server.xml 的我们所用的端口的配置添加URIEncoding="UTF-8"之后,再把VM options设置好之后,重启tomcat,就可以解决问题了)

 

 


原文链接:https://blog.csdn.net/weixin_45555709/article/details/102493100

相关文章

一 、安装solr 环境说明:centos 7.3,solr 6.6,zookeeper3...
tomcat 日志说明 配置文件server.xml 默认日志格式为 推荐使...
在实际生产环境中,tomcat的 catalina.out日志默认是不切割的...
简介: SSL 协议的3个特性: 保密:通过SSL链接传输的数据是...
遵循Java Servlet 规范第4节中的建议 ,Apache Tomcat实现了...