内部処理はunicodeなんだけど入力は環境に依存する。
TOMCATであれば、フォームのページの文字コード
(SJISやEUCなど)でそのまま入ってくる。
アプリケーションならOSの文字コードではいってくるんじゃ
ないかな?(未確認)
よって、まず入力データの文字コードが何かを確認し、
データベースの文字コードに変換してからinsert。

MySQLのコンパイル時にきちんと文字コードを設定しておけば、
JDBCが変換してくれるようなことがどこかに書いてあったような・・・