位元組流 (特定編碼) --InputStreamReader(編碼)--> 字符流 (Unicode) --OutputStreamWriter(編碼)--> 位元組流 (特定編碼)
關鍵:指定正確編碼,否則 JVM 使用平台預設編碼導致轉碼錯誤。
| 環節 | 設定方式 | 預設值 |
|---|---|---|
| JSP 原始檔讀取 | <%@ page pageEncoding="..." %> | ISO-8859-1 |
| 回應輸出 | <%@ page contentType="text/html;charset=..." %> | ISO-8859-1 |
| 請求參數解碼 | Filter: request.setCharacterEncoding("...") | ISO-8859-1 (容器預設) |
| GET 參數解碼 | Tomcat: <Connector URIEncoding="UTF-8"> | ISO-8859-1 |
| 資料庫連線 | JDBC URL 參數 characterEncoding | 視驅動而定 |
GBK 或 UTF-8。web.xml 設定 Filter 統一請求/回應編碼。pageEncoding=UTF-8,contentType=UTF-8,Filter 設 UTF-8,DB 連線 UTF-8,HTML Meta UTF-8。