サーブレット 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に値がなぜ入らないのかがわかりません
どこが原因なのでしょうか?
ご教授いただけたら幸いです
userDAO(?) クラスのloginメソッドのreturn がnullしか返していませんが。
回答1件
あなたの回答
tips
プレビュー