Hitachi

Hitachi Advanced Data Binder AP開発ガイド


7.6.4 文字コードの変換

Javaプログラムでは,文字コードはUnicode(UTF-16)で扱うため,JDBCドライバがHADBの文字データとUnicode(UTF-16)との相互文字コード変換をします。この文字コード変換処理で,JDBCドライバはJava仮想マシンが提供するエンコーダを利用します。

HADBの文字データとUnicode(UTF-16)との相互文字コード変換の流れを次の図に示します。

図7‒3 HADBの文字データとUnicode(UTF-16)との相互文字コード変換の流れ

[図データ]

HADBとの文字データのやり取りの際,Java仮想マシンのエンコーダに対して,JDBCドライバが文字セット名称を指定します。このとき,HADBサーバの文字コードUnicode(UTF-8)を取得し,それに相当する文字セット名称にします。

HADBサーバの文字コードに対応する,Java仮想マシンのエンコーダに対して指定する文字セット名称を次の表に示します。

表7‒15 HADBサーバの文字コードに対応する文字セット名称

項番

HADBサーバの文字コード

(環境変数ADBLANGに指定した文字コード)

Java仮想マシンのエンコーダに指定する文字セット名称

1

Unicode(UTF-8)(UTF8)

UTF-8

2

Shift-JIS(SJIS)

Windows-31j(MS932)

注※

Java仮想マシンのエンコーダに表中の文字セット名称が指定されるのは,HADBサーバとのコネクション確立後になります。

コネクション確立前は,Java仮想マシンのデフォルトの文字セットで文字コード変換します。