teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

追記部分

2019/09/06 08:21

投稿

kokok
kokok

スコア145

title CHANGED
File without changes
body CHANGED
@@ -14,7 +14,6 @@
14
14
  </body>
15
15
  </html>
16
16
  ```
17
-
18
17
  ```java
19
18
  package servlet;
20
19
 
@@ -30,7 +29,6 @@
30
29
 
31
30
  import dao.ADDR_DB;
32
31
 
33
-
34
32
  @WebServlet("/Address")
35
33
  public class Address extends HttpServlet {
36
34
  private static final long serialVersionUID = 1L;
@@ -108,9 +106,6 @@
108
106
  <form action="address.jsp" method="get">
109
107
  <button type="submit" name="button2">戻る</button>
110
108
  </form>
111
- <form action="addr_delete.jsp" method="get">
112
- <button type="submit" name="button3">住所削除</button>
113
- </form>
114
109
  <form action="addr_update.jsp" method="get">
115
110
  <button type="submit" name="button4">住所更新</button>
116
111
  </form>
@@ -210,8 +205,7 @@
210
205
 
211
206
  //郵便番号の取得
212
207
  public ArrayList<String> getpost(){
213
- ArrayList<String> post = new ArrayList<String>();
208
+ ArrayList<String> post = new ArrayList<String>();
214
-
215
209
  try {
216
210
 
217
211
  connect();
@@ -224,8 +218,7 @@
224
218
 
225
219
  while(rs.next()) {
226
220
 
227
- post.add(rs.getString("address_code"));
221
+ post.add(rs.getString("address_code"));
228
-
229
222
  }
230
223
 
231
224
  }catch(SQLException e){
@@ -237,12 +230,10 @@
237
230
  close();
238
231
  }
239
232
 
240
-
241
233
  return post;
242
234
  }
243
235
 
244
236
 
245
-
246
237
  //住所一覧取得する
247
238
  public ArrayList<String> getaddrss() {
248
239
  ArrayList<String> result = new ArrayList<String>();
@@ -259,8 +250,7 @@
259
250
 
260
251
  while(rs.next()) {
261
252
 
262
- result.add(rs.getString("address"));
253
+ result.add(rs.getString("address"));
263
-
264
254
  }
265
255
 
266
256
  }catch(SQLException e){
@@ -298,36 +288,15 @@
298
288
  }catch(SQLException e) {
299
289
 
300
290
  e.printStackTrace();
301
- }finally {
291
+ }finally {
302
-
303
292
  close();
304
293
  }
305
294
  return false;
306
295
  }
307
-
308
296
  }
309
297
 
310
298
  ```
311
299
 
312
- ```html
313
- //regis_success.jsp ファイル名   住所の追加が成功の場合
314
-
315
- <%@ page language="java" contentType="text/html; charset=UTF-8"
316
- pageEncoding="UTF-8"%>
317
- <!DOCTYPE html>
318
- <html>
319
- <head>
320
- <meta charset="UTF-8">
321
- <title>登録完了</title>
322
- </head>
323
- <body>
324
- <p>住所登録が完了しました</p>
325
- <form action="address.jsp" method="get">
326
- <button type="submit">戻る</button>
327
- </form>
328
- </body>
329
- </html>
330
- ```
331
300
  ```java
332
301
 
333
302
  // DBIO ファイル名
@@ -347,14 +316,12 @@
347
316
  protected static final String DBPASS = "pass";
348
317
  protected Connection conn;
349
318
 
350
-
351
319
  public DBIO(){
352
320
  this.connect();
353
321
  }
354
322
 
355
323
  public void connect() {
356
324
  try {
357
-
358
325
  Class.forName("com.mysql.jdbc.Driver");
359
326
 
360
327
  conn = DriverManager.getConnection(DBNAME,DBUSER,DBPASS);
@@ -413,4 +380,29 @@
413
380
  address_city VARCHAR(10) NOT NULL,
414
381
  address_street VARCHAR(255),
415
382
  CONSTRAINT PRIMARY KEY (address_id)
416
- );
383
+ );
384
+
385
+ --追記--
386
+ address_add.jspの入力フォームに
387
+ 郵便番号 111-1111
388
+ 県     北
389
+ 市町村   西
390
+ 番地    東
391
+
392
+ と入力すると
393
+ 郵便番号   111-1111
394
+ 住所     æ±è¥¿å 
395
+ と表示されてしまいます 。
396
+
397
+ 県 の入力フォームに 北海道など3文字とかの漢字を入力すると
398
+ com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column 'address_prefecture' at row 1
399
+ とエラーになります。
400
+ ```sql
401
+ INSERT INTO addresses(address_code,address_prefecture,address_city,address_street )VALUES(?,?,?,?) ;
402
+ ```
403
+ PreparedStatement pstmt = conn.prepareStatement(sql);
404
+ pstmt.setString(1, post);
405
+ pstmt.setString(2, prefe);
406
+ pstmt.setString(3, munici);
407
+ pstmt.setString(4, addr);
408
+ int rs = pstmt.executeUpdate();