ごみ問題を分割することができ、応答文字化けして要求する文字化け。リクエストのゴミ問題(含ま要求が文字化けしてPOSTリクエストが文字化け)。
- ゴミ問題を解決するための応答
1 // に、setContentType()はにgetWriter()メソッドの前に設定する必要が 2 response.setContentType( "テキスト/ HTML、文字セット= UTF-8"); //は、応答のContent-Typeヘッダでブラウザに設定されているテキスト/ HTML;のcharset = UTF-8でエンコードされました。 図3のPrintWriter OUT = response.getWriter(); 4 out.write( "中国語出力")。
- 文字化けの要求(リクエスト歪みを取得)
。1つの // フォーム送信フォームは、getクラスのコンテンツを提出したURLにある 2 // TomcatのデフォルトのISO-8859-1は、次のようにTomcatのはURIEncoding = "UTF-8" confの下のserver.xmlを追加する必要があります。 。3 <コネクタポート= "8080"プロトコル= "HTTP / 1.1" 。4 のConnectionTimeout = "20000" 。5 にredirectPort = "8443"はURIEncoding = "UTF-8" />
//あなただけのいくつかの中国語の単語を使用することができます変更した場合
、新しいStringを(request.getParameter( "XXX")。 GetBytesメソッド( "ISO-8859-1")、 "UTF-8") ゴミ問題を解決します。
- 要求ディストーション(歪曲POSTリクエスト)
// そのコンテンツ提出POSTリクエストREQUEST要求が異なる処理を取得ではなく、URL要求よりも、となるように配置されている Request.setCharacterEncoding( "UTF-8" ); 文字列名 = request.getParameter( "name"を); System.out.printlnは(名); // 出力は中国人です
javaWebでは、プロジェクトのポスト要求歪みフィルタは、一般的に解決するために使用されます。春はorg.springframework.web.filter.CharacterEncodingFilterはポストを提出ゴミ問題を解決しています。次のように使用されます:
1 <! - web.xmlに以下を追加します- > 2 < フィルタ> 3 < フィルタ名> EncodingFilter </ フィルタ名> 4。 < フィルタクラス> org.springframework.web.filter.CharacterEncodingFilter < / フィルタクラス> 5 < INIT-PARAM > 6。 < PARAM名>エンコード</ PARAM名> 7。 < PARAM値> UTF-8 </ PARAM値> <! - UTFとして符号化セットを要求するために符号化されました-8 - > 8 </INIT-PARAM > 9 < INIT-PARAM > 10 < PARAM名> forceEncoding </ PARAM名> 11 < PARAM値>真</ PARAM値> 12 </ INIT-PARAM > 13 </ フィルタ>
<! -设置のfilter-mapping - >
<のfilter-mapping>
<フィルタ名> encodingFilter </フィルタ名>
の<url-pattern> / * </のurl-pattern>
</のfilter-mapping>