質問編集履歴

5

誤字

2020/06/25 07:03

投稿

ypk
ypk

スコア80

test CHANGED
File without changes
test CHANGED
@@ -8,11 +8,23 @@
8
8
 
9
9
 
10
10
 
11
+ ユーザーIDとパスワードをユーザーDAOから探索する際にsearchメソッドを用いようとしています。
12
+
13
+
14
+
11
- ユーザーIDとパスワードをユーザーDAOから探索する際にsearchメソッドを用いようとしています。searchメソッドは、今回の場合、指定したログイン名とパスワードの顧客名をUserテーブルから探し、見つかった場合サーブレットでセッションを作成したいと考えています。
15
+ 指定したログイン名とパスワードの顧客名をUserテーブルから探し、見つかった場合サーブレットでセッションを作成したいと考えています。
16
+
17
+
18
+
12
-
19
+ 具体的には、
13
-
14
-
20
+
21
+
22
+
15
- 具体的には、JSPのほうでユーザーID(000014)とパスワード(aiueo)を入力してサーブレットに送ると、サーブレット側でその情報がDAOにあるのであればloginid、password、そしてnameの情報をサーブレットに返し、サーブレットにてセッションを作成するということをしたいと考えています。
23
+ JSPのほうでユーザーID(000014)とパスワード(aiueo)を入力してサーブレットに送ると、サーブレット側でその情報がDAOにあるのであればloginid、password、そしてnameの情報をサーブレットに返し、サーブレットにてセッションを作成する
24
+
25
+
26
+
27
+ ということをしたいと考えています。
16
28
 
17
29
 
18
30
 

4

追記

2020/06/25 07:02

投稿

ypk
ypk

スコア80

test CHANGED
@@ -1 +1 @@
1
- searchメソッドの使い方を知りたい
1
+ searchメソッドの使い方、ログイン認証方法を知りたい
test CHANGED
@@ -32,6 +32,34 @@
32
32
 
33
33
 
34
34
 
35
+ サーブレットに返す情報は上記の情報を想定しています。
36
+
37
+
38
+
39
+ そこで、知りたい点が
40
+
41
+
42
+
43
+ ```ここに言語を入力
44
+
45
+ ・JSPから送られてきたユーザーIDとパスワードの情報がDAOにセットされているユーザーIDとパスワードの内容と一致しているかどうかをどのように調べればよいのか(自分はsearchメソッドを用いてみました)
46
+
47
+ ・ユーザーIDとパスワードの情報が一致している場合のみ、サーブレットにセッションを作成したい
48
+
49
+ ```
50
+
51
+
52
+
53
+ 上記2点について、どのようにソースを書けばよいのかが分かりません。
54
+
55
+ もし何か、どのように記述をすればよいのか、ご存じの方いらっしゃいましたら、ご教授いただけたら幸いです。
56
+
57
+ 自分もまだまだ学習中で、正直あまり分かっていないことがあります。そのため、質問に対する修正なども大歓迎です。
58
+
59
+ どうぞよろしくお願いいたします。
60
+
61
+
62
+
35
63
 
36
64
 
37
65
  ```JSP

3

UserDAOについて補足しました

2020/06/25 07:00

投稿

ypk
ypk

スコア80

test CHANGED
File without changes
test CHANGED
@@ -12,6 +12,28 @@
12
12
 
13
13
 
14
14
 
15
+ 具体的には、JSPのほうでユーザーID(000014)とパスワード(aiueo)を入力してサーブレットに送ると、サーブレット側でその情報がDAOにあるのであればloginid、password、そしてnameの情報をサーブレットに返し、サーブレットにてセッションを作成するということをしたいと考えています。
16
+
17
+
18
+
19
+
20
+
21
+ > //ユーザー情報1件
22
+
23
+ > UserDAO info = new UserDAO();
24
+
25
+ > info.setloginid("000014");
26
+
27
+ > info.setuserpassword("aiueo");
28
+
29
+ > info.setadmin(0);
30
+
31
+ > info.setname("あいうえお");
32
+
33
+
34
+
35
+
36
+
15
37
  ```JSP
16
38
 
17
39
  <%@ page language="java" contentType="text/html; charset=UTF-8"

2

ユーザー情報変更

2020/06/25 06:53

投稿

ypk
ypk

スコア80

test CHANGED
File without changes
test CHANGED
@@ -392,17 +392,17 @@
392
392
 
393
393
 
394
394
 
395
- //社員情報1件
395
+ //ユーザー情報1件
396
396
 
397
397
  UserDAO info = new UserDAO();
398
398
 
399
- info.setloginid("0C0014");
399
+ info.setloginid("000014");
400
-
400
+
401
- info.setuserpassword("kida1123Y");
401
+ info.setuserpassword("aiueo");
402
402
 
403
403
  info.setadmin(0);
404
404
 
405
- info.setname("木田勇哉");
405
+ info.setname("あいうえお");
406
406
 
407
407
 
408
408
 

1

コードの追加

2020/06/25 06:50

投稿

ypk
ypk

スコア80

test CHANGED
File without changes
test CHANGED
@@ -8,11 +8,157 @@
8
8
 
9
9
 
10
10
 
11
- ユーザーIDとパスワードをユーザーDAOから探索する際にsearchメソッドを用いようとしています。searchメソッドは、今回の場合、指定したログイン名とパスワードの顧客名をUserテーブルから探し、見つかった場合
11
+ ユーザーIDとパスワードをユーザーDAOから探索する際にsearchメソッドを用いようとしています。searchメソッドは、今回の場合、指定したログイン名とパスワードの顧客名をUserテーブルから探し、見つかった場合サーブレットでセッションを作成したいと考えています。
12
+
13
+
14
+
12
-
15
+ ```JSP
16
+
13
-
17
+ <%@ page language="java" contentType="text/html; charset=UTF-8"
18
+
14
-
19
+ pageEncoding="UTF-8"%>
20
+
21
+ <%@ page import="common.LoggerTester" %>
22
+
23
+ <% request.setCharacterEncoding("UTF-8"); %>
24
+
25
+ <% String loginErrorMessage = (String)request.getAttribute("loginErrorMessage"); %>
26
+
27
+
28
+
29
+ <html>
30
+
31
+ <head>
32
+
33
+ <meta charset="UTF-8">
34
+
35
+ <title>書籍管理システム-<ログイン></title>
36
+
37
+ <link rel="stylesheet" href="header.css">
38
+
39
+ </head>
40
+
41
+
42
+
43
+ <div class="container">
44
+
45
+ <header>
46
+
47
+
48
+
49
+ <div class="header">
50
+
51
+
52
+
53
+ <div class="header_logo_font">
54
+
55
+ <p>書籍管理システムログイン</p>
56
+
57
+ </div>
58
+
59
+ </div>
60
+
61
+
62
+
63
+ <hr>
64
+
65
+ </header>
66
+
67
+ <body>
68
+
69
+ <div class="body">
70
+
71
+ <div class="content">
72
+
73
+ <div align="left">
74
+
75
+ <table border="0">
76
+
77
+
78
+
79
+ <div class="break">
80
+
81
+ <font color="#fff">空欄作成のために使用。画面に映りません。</font>
82
+
83
+ </div>
84
+
85
+
86
+
87
+ <div class="break">
88
+
89
+ <font color="#fff">空欄作成のために使用。画面に映りません。</font>
90
+
91
+ </div>
92
+
93
+
94
+
95
+ <%
96
+
97
+ LoggerTester lt = new LoggerTester();
98
+
99
+ lt.outActionLog("login.jsp", "処理開始");
100
+
101
+ %>
102
+
103
+
104
+
105
+ <% if(loginErrorMessage != null){ %>
106
+
107
+ <center><p><font color="red"><%= loginErrorMessage %></font></p></center>
108
+
109
+ <%} %>
110
+
111
+
112
+
113
+ <div class="break">
114
+
115
+ <font color="#fff">空欄作成のために使用。画面に映りません。</font>
116
+
117
+ </div>
118
+
119
+
120
+
121
+ <form method="POST" action="Login">
122
+
123
+ <p>ユーザID<br>
124
+
125
+ <input type="text" name="loginid" value="" size="24">
126
+
127
+
128
+
129
+ <p>パスワード<br>
130
+
131
+ <input type="password" name="userpassword" value="" size="24">
132
+
133
+ <br>
134
+
135
+ <input type="submit" value="ログイン">
136
+
137
+
138
+
139
+ </form>
140
+
141
+ </table>
142
+
143
+
144
+
145
+ </div>
146
+
147
+ </div>
148
+
149
+ </body>
150
+
151
+
152
+
153
+ </div>
154
+
155
+ </html>
156
+
157
+ ```
158
+
159
+
160
+
15
- ```サーブレット
161
+ ```Servlet
16
162
 
17
163
  package exam;
18
164
 
@@ -145,3 +291,127 @@
145
291
 
146
292
 
147
293
  ```
294
+
295
+
296
+
297
+ ```DAO
298
+
299
+ package dao;
300
+
301
+
302
+
303
+ import java.io.Serializable;
304
+
305
+ import java.sql.SQLException;
306
+
307
+ import java.util.ArrayList;
308
+
309
+
310
+
311
+ public class UserDAO implements Serializable {
312
+
313
+
314
+
315
+ //アクセサメソッド
316
+
317
+ private String _loginid;
318
+
319
+ private String _userpassword;
320
+
321
+ private int _admin;
322
+
323
+ private String _name;
324
+
325
+
326
+
327
+ public void setloginid(String loginid) {
328
+
329
+ this._loginid = loginid;
330
+
331
+ }
332
+
333
+ public String getloginid() {
334
+
335
+ return this._loginid;
336
+
337
+ }
338
+
339
+
340
+
341
+ public void setuserpassword(String userpassword) {
342
+
343
+ this._userpassword = userpassword;
344
+
345
+ }
346
+
347
+ public String getuserpassword() {
348
+
349
+ return this._userpassword;
350
+
351
+ }
352
+
353
+
354
+
355
+ public void setadmin(int admin) {
356
+
357
+ this._admin = admin;
358
+
359
+ }
360
+
361
+ public int getadmin() {
362
+
363
+ return this._admin;
364
+
365
+ }
366
+
367
+
368
+
369
+ public void setname(String name) {
370
+
371
+ this._userpassword = name;
372
+
373
+ }
374
+
375
+ public String getname() {
376
+
377
+ return this._name;
378
+
379
+ }
380
+
381
+
382
+
383
+
384
+
385
+ //テーブルに登録されているデータを全件取得
386
+
387
+ public ArrayList<UserDAO> selectUser() throws ClassNotFoundException,SQLException{
388
+
389
+
390
+
391
+ ArrayList<UserDAO> UserList = new ArrayList<UserDAO>();
392
+
393
+
394
+
395
+ //社員情報1件
396
+
397
+ UserDAO info = new UserDAO();
398
+
399
+ info.setloginid("0C0014");
400
+
401
+ info.setuserpassword("kida1123Y");
402
+
403
+ info.setadmin(0);
404
+
405
+ info.setname("木田勇哉");
406
+
407
+
408
+
409
+ // 戻り値の設定
410
+
411
+ return UserList;
412
+
413
+ }
414
+
415
+ }
416
+
417
+ ```