質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Q&A

解決済

1回答

1385閲覧

ログイン判定 値が取れない原因

satosi.kikeo

総合スコア9

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

0グッド

0クリップ

投稿2020/02/12 09:39

サーブレット request.setCharacterEncoding("UTF-8"); String login_id = request.getParameter("login_id"); String password = request.getParameter("password"); usersDAO user = new usersDAO(); userbeans login_info= user.login(login_id,password); デバックでカーソルを合わせたところ login_infoはnullになっています login_id,passwordは値をとれています if (login_info == null) { request.setAttribute("er", "ログインに失敗しました"); RequestDispatcher dispatcher = request.getRequestDispatcher("/WEB-INF/jsp/Loginpage.jsp"); dispatcher.forward(request, response); return ; }

beans

1package beans; 2 3import java.io.Serializable; 4import java.util.Date; 5 6 7public class userbeans implements Serializable { 8 private int id; 9 private String login_id; 10 private String name; 11 private Date birth_date; 12 private String password; 13 private String adress; 14 private String personal; 15 public userbeans(String loginidData) { 16 17 } 18 19 public userbeans (String login_id,String password) { 20 this.login_id = login_id; 21 this.password = password; 22 23 } 24 25 public int getId() { 26 return id; 27 } 28 public void setId(int id) { 29 this.id = id; 30 } 31 public String getLogin_id() { 32 return login_id; 33 } 34 public void setLogin_id(String login_id) { 35 this.login_id = login_id; 36 } 37 public String getName() { 38 return name; 39 } 40 public void setName(String name) { 41 this.name = name; 42 } 43 public Date getBirth_date() { 44 return birth_date; 45 } 46 public void setBirth_date(Date birth_date) { 47 this.birth_date = birth_date; 48 } 49 public String getPassword() { 50 return password; 51 } 52 public void setPassword(String password) { 53 this.password = password; 54 } 55 public String getAdress() { 56 return adress; 57 } 58 public void setAdress(String adress) { 59 this.adress = adress; 60 } 61 public String getPersonal() { 62 return personal; 63 } 64 public void setPersonal(String personal) { 65 this.personal = personal; 66 } 67 68 69 70} 71

DAO

1 public userbeans login(String login_Id,String password) { 2 3 Connection conn = null; 4 try { 5 conn = DBManager.getConnection(); 6 String sql = "select * from user where login_id = ? and password = ?"; 7 8 PreparedStatement pStmt = conn.prepareStatement(sql); 9 10 pStmt.setString(1, login_Id); 11 pStmt.setString(2,password); 12 ResultSet rs = pStmt.executeQuery(); 13 14 15 if (!rs.next()) { 16 return null; 17 18 19 20 } 21 22 23 24 25 26 } catch (SQLException e) { 27 28 e.printStackTrace(); 29 } finally { 30 31 if (conn != null) { 32 try { 33 conn.close(); 34 } catch (SQLException e) { 35 e.printStackTrace(); 36 37 } 38 } 39 } 40 return null; 41 42 43 44 }

ログインIDとパスワードでログイン判定をしていますが上手くいきません
デバックでカーソルを合わせたところ
login_infoはnullになっています
login_id,passwordは値をとれています

login_infoに値がなぜ入らないのかがわかりません
どこが原因なのでしょうか?
ご教授いただけたら幸いです

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

dodox86

2020/02/12 09:48

userDAO(?) クラスのloginメソッドのreturn がnullしか返していませんが。
guest

回答1

0

ベストアンサー

login()がnullしか返してません。
userbeansに値詰めて返す必要があるのでは。

投稿2020/02/12 09:54

m.ts10806

総合スコア80875

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

satosi.kikeo

2020/02/18 00:25

ご返事遅くなり申し訳ございませんでした。 解決でき嬉しいです ありがとうございました
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問