回答編集履歴

2

変更

2019/07/19 05:29

投稿

root_jp
root_jp

スコア4666

test CHANGED
@@ -34,7 +34,7 @@
34
34
 
35
35
  PreparedStatement pStmt = conn.prepareStatement(sql);
36
36
 
37
- pStmt.setInt(1, id); // ここを追記
37
+ pStmt.setInt(1, id); // ここを追記。「パラメータ "#1" がセットされていません」はおそらくこれがないためかと思われます。
38
38
 
39
39
 
40
40
 

1

追記

2019/07/19 05:29

投稿

root_jp
root_jp

スコア4666

test CHANGED
@@ -13,3 +13,49 @@
13
13
 
14
14
 
15
15
  `getParameter`の戻り値の型はStringなので、直接intに代入することはできません。
16
+
17
+
18
+
19
+ ### 追記
20
+
21
+ `public List<Mutter> findOne()`がどこから呼ばれているか分からないんですが、
22
+
23
+ まずはこのメソッドを、`public List<Mutter> findOne(int id)`に直しましょう
24
+
25
+ そして、内容を以下のようにしましょう。
26
+
27
+
28
+
29
+ ```Java
30
+
31
+ //select文を追加
32
+
33
+ String sql = "SELECT * FROM MUTTER WHERE ID=?";
34
+
35
+ PreparedStatement pStmt = conn.prepareStatement(sql);
36
+
37
+ pStmt.setInt(1, id); // ここを追記
38
+
39
+
40
+
41
+ //select文を実行し、結果表を取得
42
+
43
+ ResultSet rs = pStmt.executeQuery();
44
+
45
+ ```
46
+
47
+
48
+
49
+ そして呼び出し時に、リクエストから取得したidを渡して呼びましょう。
50
+
51
+
52
+
53
+ ```Java
54
+
55
+ String str = request.getParameter("id");
56
+
57
+ int id = Integer.parseInt(str);
58
+
59
+ mutterDao.findOne(id);
60
+
61
+ ```