Cosminexus 機能解説

[目次][用語][索引][前へ][次へ]

4.5 文字コード変換

HTTPは,主にWebサーバからブラウザへデータをダウンロードするために用いられるプロトコルですが,HTMLのフォームの場合などではデータのアップロードにも使われます。

ダウンロードするコンテンツの文字コードをWebサーバからブラウザに伝えるための規格は,Servlet APIでも明確に規定されています。しかし,過去のServlet API(Servlet API 2.2以前)では,HTTPクエリ文字列とHTTPリクエストボディの文字コードの扱いが明確ではなかったため,ベンダによって扱いが異なっていました。

Servlet API 2.3からは,Servlet APIを通してHTTPクエリ文字列やHTTPリクエストボディを参照するときに,文字コードを指定できるようになりました(ただし,エンコードタイプがmultipart/form-dataのHTTPリクエストボディを除きます)。これらのデータは,指定された文字コードのデータと見なされてJavaの内部表現であるUnicodeに変換されてからアプリケーションに渡されます。

アプリケーション開発時に使用する文字コードについては,「付録G アプリケーションの開発で使用する文字コード」を参照してください。