dポイントプレゼントキャンペーン実施中!

こんばんは。
今日、入力フォームに入れた情報をMysqlに格納するjspを作りました。ボタンを押すとSQLに入るのですが、ここでSQL側で中身を
見てみると文字化けしています。
これを改善する方法をご存知の方ご教授いただけませんでしょうか?
また、jspのほうの送信データの文字コードを変更する方法につきましてもご存知の方いらっしゃいましたら
アドバイスをお願いいたします。
今はWindows-31Jです。

A 回答 (5件)

間にBeanとか使っていませんか?(ソースがないので、当てずっぽですが。



とりあえずは、お勧め過去ログを、と。

「Bean→JSPでの文字化け」
http://oshiete1.goo.ne.jp/qa267793.html

「UTF-8で書かれたJSPの日本語文字コード変換の正しい方法がわかりません」
http://oshiete1.goo.ne.jp/qa2909221.html

参考URL:http://www.itmedia.co.jp/developer/java/jspprog/ …
    • good
    • 0

>JSPでゲットパラメータした


>時点で文字化けしています。

でしたら、>>ANo.3の文字コード宣言。
tomcat5.x以降を利用の場合はserver.xmlの確認。
この2点で解決する。

だめでしたら、何らかのミスがあるはずなので、JSPのソースコード。及び動作環境を提示してみてはどうでしょうか。
    • good
    • 0

確認したいのですが、


・JSPがパラメータを受けた時点で文字化けしている?
・MySQLに保存した時に、MySQL内で文字化けする?
どっちでしょうか。

>このときはJSP側もしくはゲットパラメータのところで
>どのような処置を
>施せばよろしいのでしょうか?

JSPではパラメータを受ける時というか、ページの宣言にどの文字コードか指定する必要があります。
宣言の方法は、ANo.1で提示したURLに載ってます。

GETパラメータってことですので、tomcat5.x以降でしたら
http://www.javaroad.jp/servletjsp/sj_servlet13.htm
にあるように、server.xmlの設定がいるかもしれませんね。

この回答への補足

JSPでゲットパラメータした
時点で文字化けしています。

補足日時:2008/08/14 13:17
    • good
    • 0

データベースはSJISで作ってあるわけだね? で、JSP側ももちろんSJISになっている? このへんは基本中の基本だからまず再確認。



文字化けの原因はあまりにたくさんあるんで、なんともいえないんだが。例えば、接続の際に明示的にSJISを指定してアクセスするとか。

Connection users = DriverManager.getConnection(
"jdbc:mysql://localhost/データベース?characterEncoding=SJIS",
"root","hoge");

たとえばこんな具合に、接続先の指定に?characterEncoding=SJISをつけて明示的に文字コードを指定してみる、とかね。

ダメだったら、MySQLはバージョンによっていろいろ設定も微妙に違ったりするから、そのへんの情報も更に書いたほうが回答しやすいだろう。
    • good
    • 0

「jsp 文字コード」で検索


http://www.atmarkit.co.jp/fjava/rensai3/mojibake …
このあたりとかどうでしょうか。

たぶん、JSPとMySqlの文字コードが一致していない。
MySqlの設定も見てみましょう。
両方を同じ文字コードを使う方が、文字コードの変換とか不要なので楽です。
(プログラム側の文字コード宣言とかの最低限のコードは必要ですが)

この回答への補足

ありがとうございます。
ちょっと質問内容を補足いたします。
JSPで全角文字(日本語)を
入れたときにボタンを押すと、Mysqlに入るのですが
そちらでは????となってしまい上手く表示できません。
Mysqlの文字コードはシフトジスで統一してあり動かせないのです。
このときはJSP側もしくはゲットパラメータのところで
どのような処置を
施せばよろしいのでしょうか?
重ね重ね申し訳ありません。

補足日時:2008/08/14 08:17
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!