- - PR -
ブックマークサンプルについて
1
| 投稿者 | 投稿内容 | ||||
|---|---|---|---|---|---|
|
投稿日時: 2002-12-13 15:53
こんにちは。ぴろです。またサンプルについて質問があります。。。。
一応一通り同じように動作させることができたのですが、 データベースへの登録が文字化けしてしまいます。 ?;{!~などの文字です。 JSPファイルではshift-JISを指定してるので、データベースの関わってこない部分、 (といっても今回のサンプルではほとんど関わってますが。。。) 例えば登録内容の確認画面なんかはきれいに日本語で表示されます。 しかし、データベースへ入ってしまうと、とたんに文字化けしてしまい、次回 データベースから読み出すときは文字化けした状態で読み出されます。 SQLへ登録するときにおそらく文字化けしてるのではないかと思うのですが、 何か対策などはあるのでしょうか?よろしくお願いします。 何か、参考になりそうなページがあったら、そちらの方もお聞かせくださいませんか? | ||||
|
投稿日時: 2002-12-13 16:52
データベースは何をお使いですか?
あと、DB側で設定しているキャラクタセットはどうなっているか、分かりますか? | ||||
|
投稿日時: 2002-12-13 18:46
jdkのバージョンは?
1.4.1以降をお使いであれば、Shift_JISではなく、Windows-31Jを使ってみるとどうでしょうか? [追加] SJIS、MS932間の問題じゃなさそうな気もするので、、、
ここの指定はちゃんとできてますか? ここもOKならやはりDBの設定かも。 [ メッセージ編集済み 編集者: ひろ 編集日時 2002-12-13 19:07 ] | ||||
|
投稿日時: 2002-12-14 01:21
こんばんは。さっそくのレスありがとうございます。
DBのキャラクタ設定の件ですが、サンプルのものとまったく同じものを使用しています。 なので、やはりDBの問題なのでしょうか? SQL、わかりません。。。。 | ||||
|
投稿日時: 2002-12-14 08:07
おはようございます。
JDKのバージョンは1.4.1、tomcatは4.0.2、です。 shift-jis ではなく、 windows-31j という設定方法もあるのですね。 早速試してみようと思います。 DB側(SQL側)のキャラクタコード設定部分というのは JSP内で決めるものなのでしょうか? | ||||
|
投稿日時: 2002-12-16 11:21
windows31-Jでは対応していないキャラクターコードと出てきました。
>latteさん DBはPostgreSQLを使っています。 やはり、JSPからSQLへのデータ登録時に文字化けがおきているようです。 なにかヒントなどはありますでしょうか? | ||||
|
投稿日時: 2002-12-16 13:32
すみません。サンプルをちゃんと見ずに回答してしまい。 postgreも全然使ったことないのですが、とりあえずこの2行をDB処理の前に持っていってみるとどうでしょう? (表示する側のJSPにも同じ処理があると思いますが、そちらははずしてみて下さい。) あとリクエスト送信元のJSPにShift_JISを使われているなら、変換処理部分も、Euc_JPではなくShift_JISにしておいてください。 このサンプルだとDBにはリクエストで送られてきた文字列をiso-8859-1でunicodeに変換した ものを使ってDBに反映しています。 表示する際にEuc_JPに変換して表示する方法をとっているようですね。 サンプルのとおりならうまく行くんでしょうが、どうもこの辺りに問題があるのではないかと。 JDBCドライバの違いかもしれません。 なぜこの変換処理が必要かはWeb上でもいろんなところに解説があると思います。 参考までに。 http://www.t3.rim.or.jp/~yoko-k-h/java/servlet/programming/mojibake.html [ メッセージ編集済み 編集者: ひろ 編集日時 2002-12-16 13:44 ] | ||||
1
