質問編集履歴

2

コードの記載部分を明確にしました。

2020/08/29 10:02

投稿

Josh_Jan_J
Josh_Jan_J

スコア4

test CHANGED
File without changes
test CHANGED
@@ -92,6 +92,8 @@
92
92
 
93
93
 
94
94
 
95
+ ```Java
96
+
95
97
  public List<Emp> searchAll() {
96
98
 
97
99
  List<Emp> list = new ArrayList<Emp>();
@@ -146,6 +148,8 @@
146
148
 
147
149
  } //メソッド終了
148
150
 
151
+ ```
152
+
149
153
 
150
154
 
151
155
 

1

searchAll()メソッドの記述を追加しました。

2020/08/29 10:02

投稿

Josh_Jan_J
Josh_Jan_J

スコア4

test CHANGED
File without changes
test CHANGED
@@ -77,3 +77,95 @@
77
77
  言語 Java ver.8
78
78
 
79
79
  環境 eclipse
80
+
81
+
82
+
83
+
84
+
85
+
86
+
87
+
88
+
89
+
90
+
91
+ 以下searchAll()メソッドです。
92
+
93
+
94
+
95
+ public List<Emp> searchAll() {
96
+
97
+ List<Emp> list = new ArrayList<Emp>();
98
+
99
+ String sql = "SELECT empno, ename, job "
100
+
101
+ + "FROM emp;";
102
+
103
+
104
+
105
+ try(Connection conn = DriverManager.getConnection(*パスを記述しています);
106
+
107
+ PreparedStatement pstmt = conn.prepareStatement(sql);) {
108
+
109
+
110
+
111
+ ResultSet rs = pstmt.executeQuery();
112
+
113
+
114
+
115
+ while(rs.next()) {
116
+
117
+ Emp emp = new Emp();
118
+
119
+ int empno = rs.getInt("empno");
120
+
121
+ String ename = rs.getString("ename");
122
+
123
+ String job = rs.getString("job");
124
+
125
+
126
+
127
+ emp.setEmpno(empno);
128
+
129
+ emp.setEname(ename);
130
+
131
+ emp.setJob(job);
132
+
133
+
134
+
135
+ list.add(emp);
136
+
137
+ }
138
+
139
+ } catch(SQLException e) {
140
+
141
+ e.printStackTrace();
142
+
143
+ }
144
+
145
+ return list;
146
+
147
+ } //メソッド終了
148
+
149
+
150
+
151
+
152
+
153
+ こんな感じです。
154
+
155
+ 上記は正しく表示された記述です。
156
+
157
+
158
+
159
+ ケース①のようになってしまったときは、
160
+
161
+ Emp emp = new Emp();
162
+
163
+ を while(rs.next()) の中ではなく、
164
+
165
+ public List<Emp> searchAll() {
166
+
167
+ のすぐ下に記述しておりました。
168
+
169
+
170
+
171
+ 宜しくお願い致します!