前提・実現したいこと
ユーザーidが未入力の場合、「ユーザいーidが入力されていません」と表示
パスワードが未入力の場合、「パスワードが入力されていません」と表示したいのですが
どう処理を進めていったらいいか分からないので、ご教授いただけますでしょうか。
該当のソースコード
jsp
1<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> 2<!DOCTYPE html> 3<html lang="ja"> 4 <head> 5 <meta charset="UTF-8"> 6 <link href="<%=request.getContextPath()%>/css/style.css" rel="stylesheet" type="text/css" /> 7 <title>ログイン画面</title> 8 </head> 9 10 <body> 11 <%@include file="/jsp/common/header.jsp"%> 12 13 <div id="main"> 14 <p>ユーザーIDとパスワードを入力してください。</p> 15 16 <form action="<%=request.getContextPath()%>/login" method="post"> 17 ユーザーID:<input type="text" name="bookUserId"><br> 18 パスワード:<input type="password" name="password"><br> 19 <input type="submit" value="ログイン"> 20 </form> 21 </div> 22 23 <%@include file="/jsp/common/footer.jsp"%> 24 </body> 25</html>
servlet
1package jp.co.sss.book.servlet; 2 3import java.io.IOException; 4 5import javax.servlet.ServletException; 6import javax.servlet.annotation.WebServlet; 7import javax.servlet.http.HttpServlet; 8import javax.servlet.http.HttpServletRequest; 9import javax.servlet.http.HttpServletResponse; 10import javax.servlet.http.HttpSession; 11 12import jp.co.sss.book.bean.BookUser; 13import jp.co.sss.book.dao.BookUserDAO; 14 15/** 16 * ログイン用サーブレット 17 * 18 * @author system_shared 19 */ 20@WebServlet(urlPatterns = {"/login"}) 21public class Login extends HttpServlet { 22 23 public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 24 25 String bookUserId = request.getParameter("bookUserId"); 26 String password = request.getParameter("password"); 27 28 BookUser bookUser = BookUserDAO.findByUserIDAndPassword(bookUserId, password); 29 30 if (bookUser != null) { 31 HttpSession session = request.getSession(); 32 session.setAttribute("bookUser", bookUser); 33 request.getRequestDispatcher("/BookList").forward(request, response); 34 35 } else { 36 request.getRequestDispatcher("jsp/index.jsp").forward(request, response); 37 } 38 39 } 40} 41 42
servlet
1package jp.co.sss.book.bean; 2 3/** 4 * ユーザ情報Bean 5 * 6 * @author system_shared 7 */ 8public class BookUser { 9 /** ユーザID */ 10 private int bookUserId; 11 12 /** ユーザ名 */ 13 private String bookUserName; 14 15 /** パスワード */ 16 private String password; 17 18 /** 19 * ユーザIDを取得 20 * 21 * @return ユーザID 22 */ 23 public int getBookUserId() { 24 return bookUserId; 25 } 26 27 /** 28 * ユーザIDを保存 29 * 30 * @param bookUserId 31 * ユーザID 32 */ 33 public void setBookUserId(int bookUserId) { 34 this.bookUserId = bookUserId; 35 } 36 37 /** 38 * ユーザ名を取得 39 * 40 * @return ユーザ名 41 */ 42 public String getBookUserName() { 43 return bookUserName; 44 } 45 46 /** 47 * ユーザ名を保存 48 * 49 * @param bookUserName 50 * ユーザ名 51 */ 52 public void setBookUserName(String bookUserName) { 53 this.bookUserName = bookUserName; 54 } 55 56 /** 57 * パスワードを取得 58 * 59 * @return パスワード 60 */ 61 public String getPassword() { 62 return password; 63 } 64 65 /** 66 * パスワードを保存 67 * 68 * @param password 69 * パスワード 70 */ 71 public void setPassword(String password) { 72 this.password = password; 73 } 74 75} 76
servlet
1 2package jp.co.sss.book.dao; 3 4import java.sql.Connection; 5import java.sql.PreparedStatement; 6import java.sql.ResultSet; 7import java.sql.SQLException; 8 9import jp.co.sss.book.bean.BookUser; 10 11/** 12 * ユーザ情報テーブル用DAO 13 * 14 * @author system_shared 15 */ 16public class BookUserDAO { 17 18 /** 19 * ユーザIDとパスワードが一致するユーザ情報を検索 20 * 21 * @param userId 22 * ユーザID 23 * @param password 24 * パスワード 25 * @return ユーザ情報 26 * @throws SQLException 27 * データベース操作失敗時に送出 28 */ 29 public static BookUser findByUserIDAndPassword(String userId, String password) { 30 31 Connection con = null; 32 PreparedStatement ps = null; 33 ResultSet rs = null; 34 35 BookUser bookUser = null; 36 37 try { 38 con = DBManager.getConnection(); 39 40 String sql = "SELECT * FROM book_user WHERE book_user_id = ? AND password = ?"; 41 ps = con.prepareStatement(sql); 42 43 ps.setString(1, userId); 44 ps.setString(2, password); 45 46 rs = ps.executeQuery(); 47 48 if (rs.next()) { 49 bookUser = new BookUser(); 50 bookUser.setBookUserId(rs.getInt("book_user_id")); 51 bookUser.setBookUserName(rs.getString("book_user_name")); 52 bookUser.setPassword(rs.getString("password")); 53 54 55 } 56 57 } catch (SQLException e) { 58 e.printStackTrace(); 59 60 } finally { 61 DBManager.close(rs); 62 DBManager.close(ps); 63 DBManager.close(con); 64 } 65 66 return bookUser; 67 } 68 69}
よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー