1. 中国語文字化けの原因

エンコード時の文字セットとデコード時の文字セットが一致しない。

2. Web開発プロセスで発生する可能性のある文字化けの位置と解決策

①request文字化け

サーバーにデータを渡す際、渡された中国語が文字化けする可能性があります。

POSTリクエスト(リクエストボディ)

解決策:

request.setCharacterEncoding("UTF-8");

GETリクエスト(アドレスバー)

解決策: Tomcatで追加の設定が必要です(私はTomcatサーバーを使用しています)。

Tomcatの conf/server.xml に以下のコードを設定するだけです。

​​​​​​​​​
connectionTimeout="20000"
redirectPort="8443" 
URIEncoding="UTF-8"

②response文字化け

クライアントに応答する動的Webページに中国語が含まれる場合、文字化けが発生する可能性があります。

解決策:

response.setCharacterEncoding("UTF-8");​
response.setContentType("text/html;charset=UTF-8")​