回答編集履歴

2

インデントそろえてみた

2019/08/29 05:42

投稿

azuapricot
azuapricot

スコア2341

test CHANGED
@@ -29,3 +29,283 @@
29
29
  インデントをしっかり意識してコーディングするようにしましょう。
30
30
 
31
31
  Eclipseを使っているなら自動フォーマットもありますし。
32
+
33
+
34
+
35
+
36
+
37
+ **インデントをそろえてみた。**
38
+
39
+
40
+
41
+ ```Java
42
+
43
+ package dateAll;
44
+
45
+
46
+
47
+ import java.io.IOException;
48
+
49
+ import java.sql.Connection;
50
+
51
+ import java.sql.PreparedStatement;
52
+
53
+ import java.sql.ResultSet;
54
+
55
+ import java.sql.SQLException;
56
+
57
+
58
+
59
+ import javax.servlet.ServletException;
60
+
61
+ import javax.servlet.annotation.WebServlet;
62
+
63
+ import javax.servlet.http.HttpServlet;
64
+
65
+ import javax.servlet.http.HttpServletRequest;
66
+
67
+ import javax.servlet.http.HttpServletResponse;
68
+
69
+ /**
70
+
71
+ * Servlet implementation class ProcessServ
72
+
73
+ */
74
+
75
+ @WebServlet("/ProcessServ")
76
+
77
+ public class ProcessServ extends HttpServlet {
78
+
79
+ private static final long serialVersionUID = 1L;
80
+
81
+
82
+
83
+ /**
84
+
85
+ * @see HttpServlet#HttpServlet()
86
+
87
+ */
88
+
89
+ public ProcessServ() {
90
+
91
+ super();
92
+
93
+ // TODO Auto-generated constructor stub
94
+
95
+ }
96
+
97
+
98
+
99
+ /**
100
+
101
+ * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
102
+
103
+ */
104
+
105
+ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
106
+
107
+ // TODO Auto-generated method stub
108
+
109
+ System.out.println("doGetで処理をしてしまっている");
110
+
111
+ }
112
+
113
+
114
+
115
+ /**
116
+
117
+ * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
118
+
119
+ */
120
+
121
+ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
122
+
123
+
124
+
125
+ //データベースへ接続するためのコード
126
+
127
+ //PostgreSQLへの接続情報
128
+
129
+ Connection con ;
130
+
131
+ PreparedStatement st;
132
+
133
+ ResultSet rs;
134
+
135
+
136
+
137
+ String url = "jdbc:postgresql://localhost:5432/database";
138
+
139
+ String user = "postgres";
140
+
141
+ String password = "password";
142
+
143
+
144
+
145
+ //色々な変数を定義、初期化
146
+
147
+ int id ;
148
+
149
+ String questionanswer ;
150
+
151
+ int finalid ;
152
+
153
+
154
+
155
+ int ansid1;
156
+
157
+ int ansid2;
158
+
159
+ int ansid3;
160
+
161
+
162
+
163
+ String a1;
164
+
165
+ String a2;
166
+
167
+ String a3;
168
+
169
+
170
+
171
+ //JDBC driver setting
172
+
173
+ //Class.forName("org.postgresql.Driver");
174
+
175
+
176
+
177
+ //PostgreSQLへの接続
178
+
179
+
180
+
181
+
182
+
183
+ //SQLを発行
184
+
185
+ try {
186
+
187
+ st = con.prepareStatement("select id,questionanswer,finalid from question where parentid = ?");
188
+
189
+
190
+
191
+ //ProcessPagejspからpostされた値をStringからintに変換し、変数に代入
192
+
193
+ int post = Integer.parseInt(request.getParameter("postnum"));
194
+
195
+
196
+
197
+ //SQ発行文の?部分を決定し、抽出されたデータをrsに代入
198
+
199
+ st.setInt(1, post);
200
+
201
+ rs = st.executeQuery();
202
+
203
+
204
+
205
+ //rsに保存された次の質問文のデータを、それぞれidと文章に分けて変数に代入
206
+
207
+ while (rs.next()) {
208
+
209
+ id = rs.getInt("id");
210
+
211
+ questionanswer = rs.getString("questionanswer");
212
+
213
+ finalid = rs.getInt("finalid");
214
+
215
+ }
216
+
217
+
218
+
219
+ //finalidがnullの場合とそうでない場合に分岐させる
220
+
221
+ if(finalid != 0) {
222
+
223
+ st = con.prepareStatement("select meigentext,humanname,bookname from idconn left outer join meigen on meigenid");
224
+
225
+
226
+
227
+ }else {
228
+
229
+ //質問文に値をセットする
230
+
231
+ request.setAttribute("question", questionanswer);
232
+
233
+ request.setAttribute("id", id);
234
+
235
+
236
+
237
+ //対応する回答文およびidの取り出し、変数への代入
238
+
239
+ st.setInt(1, id);
240
+
241
+ rs = st.executeQuery();
242
+
243
+ while (rs.next()) {
244
+
245
+ ansid1 = rs.getInt("id");
246
+
247
+ a1 = rs.getString("questionanswer");
248
+
249
+
250
+
251
+ ansid2 = rs.getInt("id");
252
+
253
+ a2 = rs.getString("questionanswer");
254
+
255
+
256
+
257
+ ansid3 = rs.getInt("id");
258
+
259
+ a3 = rs.getString("questionanswer");
260
+
261
+ }
262
+
263
+
264
+
265
+ //回答選択肢自身のidをセットする
266
+
267
+ request.setAttribute("ans1", ansid1);
268
+
269
+ request.setAttribute("ans1", ansid2);
270
+
271
+ request.setAttribute("ans1", ansid3);
272
+
273
+
274
+
275
+ //回答選択肢自身の質問文をセットする
276
+
277
+ request.setAttribute("a1", a1);
278
+
279
+ request.setAttribute("a2", a2);
280
+
281
+ request.setAttribute("a3", a3);
282
+
283
+
284
+
285
+ }catch (SQLException e) {
286
+
287
+ // TODO 自動生成された catch ブロック
288
+
289
+ e.printStackTrace();
290
+
291
+ }finally {
292
+
293
+ con.close(); // クローズ処理
294
+
295
+ }
296
+
297
+ //if,elseを閉じる
298
+
299
+ }
300
+
301
+ //void doPostを閉じる
302
+
303
+ }
304
+
305
+ //classを閉じる
306
+
307
+ }
308
+
309
+
310
+
311
+ ```

1

2019/08/29 05:42

投稿

azuapricot
azuapricot

スコア2341

test CHANGED
@@ -21,3 +21,11 @@
21
21
  }
22
22
 
23
23
  ```
24
+
25
+
26
+
27
+ インデントがごっちゃごちゃだと起こるミスです。
28
+
29
+ インデントをしっかり意識してコーディングするようにしましょう。
30
+
31
+ Eclipseを使っているなら自動フォーマットもありますし。