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

質問編集履歴

5

コードの追加

2015/11/29 07:23

投稿

edoooooo
edoooooo

スコア478

title CHANGED
File without changes
body CHANGED
@@ -15,6 +15,13 @@
15
15
  そのため、pStmt.setString(1,login.getUserId());
16
16
  pStmt.setString(2, login.getPass()); のgetUserや、getPassができていないのかと思い、login.javaをみて、loginメソッドや、getPassメソッドや、getUserメソッドを確認したのですが、問題はありませんでした。
17
17
 
18
+
19
+
20
+
21
+
22
+
23
+
24
+
18
25
  !!!!!!----LoginLogicTestです。
19
26
 
20
27
  package test;
@@ -55,6 +62,8 @@
55
62
 
56
63
 
57
64
 
65
+
66
+
58
67
  !!!!!-----Login.javaです。
59
68
  package model;
60
69
 
@@ -78,6 +87,14 @@
78
87
  }
79
88
  !!!!!----Login.javaはここまでです。
80
89
 
90
+
91
+
92
+
93
+
94
+
95
+
96
+
97
+
81
98
  !!!!!-----AccountDAOです。
82
99
 
83
100
  package dao;
@@ -191,64 +208,31 @@
191
208
  !!!!!---AccountDAOはここまでです。
192
209
 
193
210
 
194
- !!!!!-----LoginServletです。
195
- package servlet;
196
211
 
197
- import java.io.IOException;
198
212
 
199
- import javax.servlet.RequestDispatcher;
200
- import javax.servlet.ServletException;
201
- import javax.servlet.annotation.WebServlet;
202
- import javax.servlet.http.HttpServlet;
203
- import javax.servlet.http.HttpServletRequest;
204
- import javax.servlet.http.HttpServletResponse;
205
- import javax.servlet.http.HttpSession;
206
213
 
207
- import model.Login;
208
- import model.LoginLogic;
209
214
 
215
+
216
+
217
+
210
- @WebServlet("/LoginServlet")
218
+ !!!!!-----LoginLogic.javaです。
219
+
220
+ package model;
221
+
222
+ import dao.AccountDAO;
223
+
211
- public class LoginServlet extends HttpServlet{
224
+ public class LoginLogic{
212
225
 
213
- private static final long serialVersionUID = 1L;
214
-
215
-
216
- protected void doGet(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException{
217
- //フォワー
226
+ //executメソッ
218
- RequestDispatcher dispatcher=request.getRequestDispatcher("/WEB-INF/jsp/login.jsp");
219
- dispatcher.forward(request,response);
227
+ public boolean execute(Login login){
220
- }
228
+ AccountDAO dao=new AccountDAO();
221
-
222
-
223
-
224
- //taichiのMain.javvaの分のログインしているかのチェックは、ここでおk
229
+ Account account=dao.findByLogin(login);
225
- protected void doPost(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException{
230
+ return account !=null;
226
231
 
227
- //リクエストパラメータの取得
228
- request.setCharacterEncoding("UTF-8");
229
- String userId=request.getParameter("userId");
230
- String pass=request.getParameter("pass");
231
-
232
- //ログイン処理の実行
233
- Login login=new Login(userId,pass);
234
- LoginLogic bo=new LoginLogic();
235
- boolean result=bo.execute(login);
236
-
237
- //ログイン処理の成否によって処理を分岐
238
- if(result){//ログイン成功時
239
- //sessionスコープにuserIdを保存
240
- HttpSession session=request.getSession();
241
- session.setAttribute("userId",userId);
242
-
243
- //フォワード
244
- RequestDispatcher dispatcher=request.getRequestDispatcher("/WEB-INF/jsp/loginOK.jsp");
245
- dispatcher.forward(request, response);
246
- }else{//ログイン失敗時
247
- //フォワード
248
- RequestDispatcher dispatcher=request.getRequestDispatcher("/WEB-INF/jsp/login.jsp");
249
- dispatcher.forward(request, response);
250
- }
251
232
  }
252
233
  }
253
- !!!!!-----LoginServletはここまでです。
234
+ !!!!!-----LoginLogic.javaはここまでです。
235
+
236
+
237
+
254
238
  どうぞよろしくお願いします。

4

修正

2015/11/29 07:23

投稿

edoooooo
edoooooo

スコア478

title CHANGED
File without changes
body CHANGED
File without changes

3

わかりやすく変更しました。

2015/11/28 11:05

投稿

edoooooo
edoooooo

スコア478

title CHANGED
File without changes
body CHANGED
@@ -15,7 +15,7 @@
15
15
  そのため、pStmt.setString(1,login.getUserId());
16
16
  pStmt.setString(2, login.getPass()); のgetUserや、getPassができていないのかと思い、login.javaをみて、loginメソッドや、getPassメソッドや、getUserメソッドを確認したのですが、問題はありませんでした。
17
17
 
18
- ----LoginLogicTestです。
18
+ !!!!!!----LoginLogicTestです。
19
19
 
20
20
  package test;
21
21
 
@@ -51,11 +51,11 @@
51
51
  }
52
52
  }
53
53
 
54
- -----LoginLogicTestはここまでです。
54
+ !!!!!-----LoginLogicTestはここまでです。
55
55
 
56
56
 
57
57
 
58
-
58
+ !!!!!-----Login.javaです。
59
59
  package model;
60
60
 
61
61
  public class Login {
@@ -76,10 +76,10 @@
76
76
 
77
77
 
78
78
  }
79
+ !!!!!----Login.javaはここまでです。
79
80
 
81
+ !!!!!-----AccountDAOです。
80
82
 
81
- -----AccountDAOです。
82
-
83
83
  package dao;
84
84
 
85
85
  import java.sql.Connection;
@@ -188,10 +188,10 @@
188
188
  return true;
189
189
  }
190
190
  }
191
- ---AccountDAOはここまでです。
191
+ !!!!!---AccountDAOはここまでです。
192
192
 
193
193
 
194
- -----LoginServletです。
194
+ !!!!!-----LoginServletです。
195
195
  package servlet;
196
196
 
197
197
  import java.io.IOException;
@@ -250,5 +250,5 @@
250
250
  }
251
251
  }
252
252
  }
253
- -----LoginServletはここまでです。
253
+ !!!!!-----LoginServletはここまでです。
254
254
  どうぞよろしくお願いします。

2

丁寧な質問に変更

2015/11/28 10:59

投稿

edoooooo
edoooooo

スコア478

title CHANGED
File without changes
body CHANGED
@@ -15,10 +15,10 @@
15
15
  そのため、pStmt.setString(1,login.getUserId());
16
16
  pStmt.setString(2, login.getPass()); のgetUserや、getPassができていないのかと思い、login.javaをみて、loginメソッドや、getPassメソッドや、getUserメソッドを確認したのですが、問題はありませんでした。
17
17
 
18
+ ----LoginLogicTestです。
18
19
 
19
20
  package test;
20
21
 
21
-
22
22
  import model.Login;
23
23
  import model.LoginLogic;
24
24
 
@@ -51,11 +51,11 @@
51
51
  }
52
52
  }
53
53
 
54
+ -----LoginLogicTestはここまでです。
54
55
 
55
56
 
56
57
 
57
58
 
58
-
59
59
  package model;
60
60
 
61
61
  public class Login {
@@ -78,9 +78,8 @@
78
78
  }
79
79
 
80
80
 
81
+ -----AccountDAOです。
81
82
 
82
-
83
-
84
83
  package dao;
85
84
 
86
85
  import java.sql.Connection;
@@ -148,7 +147,6 @@
148
147
  return account;
149
148
  }
150
149
  }
151
-
152
150
 
153
151
 
154
152
  //creteメソッド
@@ -190,10 +188,10 @@
190
188
  return true;
191
189
  }
192
190
  }
191
+ ---AccountDAOはここまでです。
193
192
 
194
-
195
193
 
196
-
194
+ -----LoginServletです。
197
195
  package servlet;
198
196
 
199
197
  import java.io.IOException;
@@ -252,5 +250,5 @@
252
250
  }
253
251
  }
254
252
  }
255
-
253
+ -----LoginServletはここまでです。
256
254
  どうぞよろしくお願いします。

1

コードの追加

2015/11/28 10:54

投稿

edoooooo
edoooooo

スコア478

title CHANGED
File without changes
body CHANGED
@@ -16,6 +16,46 @@
16
16
  pStmt.setString(2, login.getPass()); のgetUserや、getPassができていないのかと思い、login.javaをみて、loginメソッドや、getPassメソッドや、getUserメソッドを確認したのですが、問題はありませんでした。
17
17
 
18
18
 
19
+ package test;
20
+
21
+
22
+ import model.Login;
23
+ import model.LoginLogic;
24
+
25
+ public class LoginLogicTest {
26
+ public static void main(String[] args){
27
+ testExecute1();//ログイン成功のテスト
28
+ testExecute2();//ログイン失敗のテスト
29
+ }
30
+
31
+ public static void testExecute1(){
32
+ Login login=new Login("minato","1234");
33
+ LoginLogic bo=new LoginLogic();
34
+ boolean result=bo.execute(login);
35
+ if(result){
36
+ System.out.println("testExecute1:成功しました。");
37
+ }else{
38
+ System.out.println("testExecute1:失敗しました。");
39
+ }
40
+ }
41
+
42
+ public static void testExecute2(){
43
+ Login login =new Login("minato","12345");
44
+ LoginLogic bo=new LoginLogic();
45
+ boolean result=bo.execute(login);
46
+ if(!result){
47
+ System.out.println("testExecute2:成功しました。");
48
+ }else{
49
+ System.out.println("testExecute2:失敗しました。");
50
+ }
51
+ }
52
+ }
53
+
54
+
55
+
56
+
57
+
58
+
19
59
  package model;
20
60
 
21
61
  public class Login {