③ JSP프로젝트-8 로그인 페이지를 만든후 아이디와 비밀번호 확인하기 == Check your username and password after creating your login page
이번에는 jsp로 로그인 페이지를 만들었습니다.
우선 아이디와 비밀번호를 입력하는 페이지, 값 받기, 값 비교하는 페이지, 성공 페이지로 나누었습니다.
코드입니다.
View_LoginPage.html |
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>로그인하기</title>
</head>
<body background="images/loginpage.png">
<center>
<h2>아이디와 비밀번호를 입력해주세요</h2>
<form name="Loginfrom" method="post" action="Control_LoginPage.jsp">
<table border=1 width=500 cellpadding=5>
<tr><td>아이디:</td><td><input type="text" name="userId"></td></tr>
<tr><td>암호:</td><td><input type="password" name="userPassword"></td></tr>
<tr><td><input type="submit" value="확인"> <input type="reset" value="다시입력하기"><td></td></tr>
</table></form>
</center>
</body>
</html>
아이디와 비밀번호를 text와 password 타입으로 주고 확인버튼과 다시입력하는 버튼을 주었습니다.
확인을 누르면 Control_LoginPage.jsp로 값이 넘어갑니다. 다시입력하는 버튼은 reset 타입으로 text가 지워지게 됩니다.
Login.java |
package LoginPage;
public class Login {
private String userId;
private String userPassword;
final String userid="login";
final String password="1234";
public boolean checkUser(){
if(userId.equals(userid)&&userPassword.equals(password)){
return true;
}else{
return false;
}
}
public String getUserId() {
return userId;
}
public void setUserId(String userId) {
this.userId = userId;
}
public String getUserPassword() {
return userPassword;
}
public void setUserPassword(String userPassword) {
this.userPassword = userPassword;
}
public String getUserid() {
return userid;
}
public String getPassword() {
return password;
}
}
Bean에 해당하는 페이지입니다 이곳에서 아이디는 login 비밀번호는 1234로 주었습니다.
함수로 checkUser을 만들었는데 이것은 View_LoginPage.html 페이지에 입력한 아이디,비밀번호값과 Login.java 에서 입력해준 아이디,비밀번호를 비교한는 함수 입니다.
이것은 Control_LoginPage.jsp에서 값을 받아 와 사용할 것입니다.
Control_LoginPage.jsp |
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<jsp:useBean id="login" class="LoginPage.Login" scope="page"/>
<jsp:setProperty property="*" name="login"/>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<%
try{
if(!login.checkUser()){
out.println("로그인에 실패하였습니다.");
out.println("아이디와 비밀번호를 다시 확인해주세요.");
%>
<meta http-equiv="Refresh" content="3; URL=View_LoginPage.html">
<%
}else{
out.println("로그인에 성공하였습니다.");
out.println("잠시만 기다려주세요~");
%>
<meta http-equiv="Refresh" content="3 ; URL=View_Success.html">
<%
}
}catch(Exception e){
out.println("로그인에 실패하였습니다.");
out.println("아이디와 비밀번호를 다시 확인해주세요.");
%>
<meta http-equiv="Refresh" content="3; URL=View_LoginPage.html">
<%
}
%>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>로그인확인</title>
</head>
<body>
<hr>
사용자ID:<jsp:getProperty property="userId" name="login"/><hr>
사용자암호:<jsp:getProperty property="userPassword" name="login"/><hr>
</body>
</html>
jsp:useBean을 사용하여 Login.java 에서 값을 받아옵니다
이후 Login에 있던 checkUser 함수를 이용하여 로그인이 성공하면 문자와 함께 View_Success.html 로 실패하였으면 다시 아이디와 비밀번호를 입력하는 창으로 가게됩니다.
View_Success.html |
<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-KR">
<title>Insert title here</title>
</head>
<body>
성공
</body>
</html>
이것은 꾸민것은 없지만 성공창으로 보내지는지 확인하기 위하여 만든것 입니다.