天天看點

關于HTML轉jsp亂碼問題

首先

菜單->Window->Preferences->General->Content Types->Text->JSP 設定Default encoding,把ISO-8859-1改為UTF-8 點選update.

第二

jsp頁面上加上<%@ page language=”java” import=”java.util.*” pageEncoding=”UTF-8”%>

另:pageEncoding是jsp檔案本身的編碼

contentType的charset是指伺服器發送給用戶端時的内容編碼

JSP要經過兩次的“編碼”,第一階段會用pageEncoding,第二階段會用utf-8至utf-8,第三階段就是由Tomcat出來的網頁, 用的是contentType。

第一階段是jsp編譯成.java,它會根據pageEncoding的設定讀取jsp,結果是由指定的編碼方案翻譯成統一的UTF-8 JAVA源碼(即.java),如果pageEncoding設定錯了,或沒有設定,出來的就是中文亂碼。

第二階段是由JAVAC的JAVA源碼至java byteCode的編譯,不論JSP編寫時候用的是什麼編碼方案,經過這個階段的結果全部是UTF-8的encoding的java源碼。