JSP サーブレット Mysqlについて質問です。
私が今実現させたいことを簡単に説明します。
画面側にはtextboxがあり、このtextboxは追加ボタンによって、
どんどん追加されていきます。
サーブレット側はこのtextboxの全ての値をDBに書き込みたいです。
例えば、textboxが二つなら、一つ目のINSERTでDBのname列にtextbox一個目の値を書き込み、二つ目のINSERTでDBのname列にtextboxニ個目の値を書き込む。
ソースを書いてみたのですが、いろいろと違いがあると思いますので、ご教示をお願いします。
現在は下記ソースを実行してもDBは更新されません・・
もしかしたら、DBの設定がおかしいのでしょうか・・
protected void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
String[] name10 = request.getParameterValues("sonota");
for (int i = 0; i < name10.length; i++) {
System.out.println(i + " " + name10[i]);
name10[i] = new String(name10[i].getBytes("8859_1"), "UTF-8");
}
Connection conn = null;
CallableStatement cs = null;
PreparedStatement stmt = null;
ResultSet rs = null;
String url = "jdbc:mysql://localhost/Sample_db";
String dbUser = "root";
String dbPass = "taratara";
try{
Class.forName("com.mysql.jdbc.Driver").newInstance();
conn = DriverManager.getConnection(url, dbUser, dbPass);
String sql= "insert into Sample_db.Sample_table (name) values (name10[i]);";
stmt = conn.prepareStatement(sql);
for (String n : name10) {
stmt.setString(1, n);
stmt.executeUpdate();
}
int cnt = stmt.executeUpdate();
stmt.close();
}catch(Exception e){
//exception
RequestDispatcher dispatcher = request.getRequestDispatcher("index.jsp");
dispatcher.forward(request, response);
}
}
}
No.1ベストアンサー
- 回答日時:
前もアドバイスしたけど
exceptionのところでstackトレースだしてみた?
出したら気づくと思うけど
System.out.println ( sql );
でSQLも見てみて?
DBの設定云々より、自分の想定している正しいSQLが生成されて発行されているのか確認しないと。
と確認してほしいところはそこなんだけど、実際はプリペアード使うなら置換用の文字は?になるんだ。
insert into Sample_db.Sample_table (name) values (?)
この回答への補足
ご回答ありがとうございます。
stackトレースをしてみます。
上記の質問はいろいろと試した結果insertすることができました!
しかし、textboxは一つで一つの値しかないのにDBに2行insertされます。
これについては今再思考中です。
一応再質問をさせていただきます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP 重複を防ぐ記述について教えて下さい。 3 2023/04/03 14:35
- PHP PHP MySql 画像を取得 1 2022/06/04 14:05
- CGI perlで書いたcgiでsqliteの使い方を教えてください 2 2023/05/08 21:29
- PHP DBのハッシュ化したパスワードをpassword_verifyで戻し照合したのですが上手く行きません 2 2023/02/06 13:24
- MySQL テーブル作成です。どこかのスペルが間違っているか記号など スペースかな? 1 2022/10/01 05:08
- Visual Basic(VBA) ACCESS DAO で不要なテーブルのフィールド(列)の削除 4 2022/06/23 12:13
- C言語・C++・C# C++プログラミングコードにポリモーフィズムを取り入れ方を教えてください。 2 2023/06/09 11:17
- Java java final 1 2022/06/10 22:49
- MySQL PHPとMySQLを使った掲示板の作り方 1 2022/06/02 13:00
- アプリ Android studio 初心者 Hello Android!しか表示されない 1 2023/08/01 08:47
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Java Struts ~に対するゲッタ...
-
入力チェックとエラーメッセー...
-
オブジェクトの中のプロパティ...
-
<s:iterator>の値をリストで取...
-
1ページに10件ずつ表示したい
-
struts の iterateでのテーブ...
-
JSPにて、変数を利用してフォン...
-
全取得したデータをjspで順番に...
-
javaの環境変数の%CATALINA_HOM...
-
応用情報技術者試験の令和元年...
-
1~100までの数字を表示し、か...
-
ループ処理の際、最後だけ","を...
-
Javaで改行などが出来ないのです。
-
ダブルクォーテーションのrepla...
-
C言語のポインターに関する警告
-
JSPやサーブレットでSystem.out...
-
配列にnullを代入すると、null...
-
n番目に大きな値を探索する
-
java キーボード入力された値の...
-
VBで作った乱数を一度も重複さ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
オブジェクトの中のプロパティ...
-
JSPでImportエラーになります
-
hiddenの値が期待した値で取得...
-
StrutsでJSPからListを受け取り...
-
requestの値が削除されません…
-
Java Struts ~に対するゲッタ...
-
PropertyNotFoundException解決...
-
全取得したデータをjspで順番に...
-
<s:iterator>の値をリストで取...
-
JSPにて、変数を利用してフォン...
-
JSPでDBからデータ読み込みブラ...
-
データベースに変数の値を挿入
-
No such validation エラー
-
JSPからServletに、テーブルに...
-
iterateで受け取った値を処理に...
-
StrutsのforEachについて
-
JSFタグ<h:dataTable>でヘッダ...
-
サーブレットjspで勤怠スケジュ...
-
javaの環境変数の%CATALINA_HOM...
-
WebWork(struts2)でのパラメー...
おすすめ情報