目錄
- 概述
- 原因
- 解決方法
- 1. idea亂碼和startup.bat啟動控制臺日志亂碼(Tomcat日志亂碼)
- 2. 瀏覽器亂碼
概述
tomcat亂碼問題相信大家肯定都遇見過,本篇將詳細介紹有關Tomcat的各種亂碼問題原因和解決方法??
原因
首先亂碼問題的原因通俗的講就是讀的編碼格式和寫的解碼格式不一致,比如最常見的兩種中文編碼UTF-8和GBK,UTF-8一個漢字占三個位元組,GBK一個漢字占兩個位元組,所以當編碼與解碼格式不一致時,輸出端當然無法識別這是啥,所以只能以亂碼代替??,
解決方法
竟然亂碼原因是因為編碼和解碼格式不一樣??,那我們想辦法把輸入端編碼格式和輸出端解碼格式統一,亂碼問題不就隨意拿捏了??
1. idea亂碼和startup.bat啟動控制臺日志亂碼(Tomcat日志亂碼)
如:


竟然是日志檔案亂碼,那我們打開Tomcat根目錄下conf/logging.properties檔案(Tomcat配置日志的檔案??),我們會發現控制臺輸出(寫)編碼是UTF-8:java.util.logging.ConsoleHandler.encoding = UTF-8??,而我們window控制臺寫的編碼是gbk,如圖:
idea同理,所以我們可以修改conf/logging.properties檔案中,java.util.logging.ConsoleHandler.encoding = GBK即可解決問題??,這也是推薦的解決方法,


蕪湖,看控制臺和idea亂碼都沒了??
還有就是修改idea的編碼格式比如:idea虛擬機選項添加-Dfile.encoding=UTF-8

等等很多種方法,這個就不列舉,建議直接修改Tomcat的編碼格式,這樣就算換編譯器也不用重新配置
2. 瀏覽器亂碼
我們還可能在Tomcat運行html、jsp等檔案亂碼,這個時候可以打開瀏覽器的IE模式或者360瀏覽器,然后滑鼠左鍵點擊編碼,修改成GBK,亂碼問題即可解決,

當然實際開發我們總不可能指望讓用戶去設定這些東西,所以還是要我們去組態檔的編碼格式??
- JSP檔案亂碼就在頭行加入:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
- HTML檔案亂碼就在head標簽加入:
<meta charset="UTF-8">
3.后端資料回傳瀏覽器亂碼大家可以根據以上舉一反三,無非就是后端資料的編碼格式和瀏覽器的編碼格式(瀏覽器一般為UTF-8)沖突,所以一般我們把資料流的編碼改為UTF-8即可
結語:到這里與Tomcat有關的亂碼問題基本上講完了,博主水平有限,如果有啥遺漏或者錯誤的大家可以指出來,學習本身就是一個不斷完善的程序??,大家以后遇見其他亂碼問題,也可以根據這種思路去進行解決,好了,又水了一篇博客,下篇見咯??(求贊??)
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/509674.html
標籤:其他
上一篇:設計模式---組合模式
