tomcat乱码问题
Tomcat亂碼問(wèn)題
平時(shí)在使用tomcat做一些服務(wù)的時(shí)候經(jīng)常遇到各種亂碼問(wèn)題,要么是控制臺(tái)輸出亂碼或者輸出日志亂碼,要么頁(yè)面接收亂碼,非常煩人。引起亂碼的原因多個(gè),從網(wǎng)上學(xué)習(xí)了很多,現(xiàn)在嘗試簡(jiǎn)單總結(jié)給大家分享
一、頁(yè)面輸出亂碼有三種可能
1.server.xml配置未注明編碼格式
瀏覽器本身有自己的顯示編碼格式,tomcat的輸出也有自己的格式,甚至我們?cè)诰帉懘a的過(guò)程中也可以指定輸出的編碼格式。所以這類原因?qū)е碌膩y碼,需要我們保持各種編碼格式統(tǒng)一:
a.在tomcat中將server.xml 的我們所用的端口的配置添加URIEncoding=“UTF-8”
b.在html的標(biāo)簽內(nèi)加上meta標(biāo)簽
c.最好在編程中輸出頁(yè)面的時(shí)候指定編碼為UTF-8
2.catalina.bat的配置問(wèn)題
在\tomcat\bin\catalina.bat這個(gè)配置文件中加上
set JAVA_OPTS=-Dfile.encoding=UTF-8
3.編譯工具
在IDEA編譯器中的VM options:設(shè)置-Dfile.encoding=UTF-8,或eclipse 的設(shè)置中改成utf-8 輸出的問(wèn)題可以解決
二.控制臺(tái)輸出亂碼
這個(gè)問(wèn)題的原因是windows默認(rèn)編碼集為GBK,由于使用startup.bat啟動(dòng)tomcat時(shí),它會(huì)讀取catalina.bat的代碼并打開(kāi)一個(gè)新窗口運(yùn)行。打開(kāi)的cmd默認(rèn)編碼可能不是utf-8,與系統(tǒng)編碼不一致,所以導(dǎo)致亂碼。所以tomcat的命令框和輸出日志都是亂碼
解決的辦法有兩個(gè):
1.修改cmd命令行的編碼
a.打開(kāi)注冊(cè)表,找到HKEY_CURRENT_USER→Console→Tomcat
b.找到CodePage項(xiàng),沒(méi)有則創(chuàng)建,更改值為十進(jìn)制的65001
2.修改logging.properties配置
a.打開(kāi)tomcat/conf/logging.properties
b.添加語(yǔ)句:java.util.logging.ConsoleHandler.encoding = GBK
c.重啟tomcat,查看日志數(shù)據(jù)即可
本文轉(zhuǎn)載自https://cloud.tencent.com/developer/article/1441354
總結(jié)
以上是生活随笔為你收集整理的tomcat乱码问题的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: JSP开发工具安装教程
- 下一篇: 泊松分布函数表