ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [JSP] session을 이용한 loginform
    WEB/JSP 2022. 9. 9. 19:18
    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>071_LoginForm.jsp</title>
    </head>
    <body>
    <form method="post" action="072_Login_do.jsp">
    	<label for="id">아이디: </label>
    	<input type="text" id="id" name="id"><br>
    	<label for="pwd">암 &nbsp; 호: </label>
    	<input type="password" id="pwd" name="pwd"><br>
    	<input type="submit" value="로그인">
    </form>
    </body>
    </html>
    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <%@ page import="java.net.URLEncoder" %>
    <%
    	String id=request.getParameter("id");
    	String pwd=request.getParameter("pwd");
    	if(id.equals("hong")&&pwd.equals("1234")){
    		// 로그인 조건이 갖춰지면
            // 로그인 결과페이지로 가기 전에 로그인 정보를 세션에 저장함
    		session.setAttribute("loginUser",id);
    		// 차후에는 세션에 로그인 정보를 
            // 단순히 지금처럼 아이디만 저장하는게 아니라 
    		// 로그인한 사람의 정보를
            // Dto 객체에 넣고 Dto 객체를 세션에 저장하게 됨.
    		// 현재는 간단히 아이디만 저장
    		response.sendRedirect("073_main.jsp");
    	}else{
    		response.sendRedirect("071_LoginForm.jsp");
    	}
    %>
    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>073_main.jsp</title>
    </head>
    <body>
    로그인 관리자 <br>전화번호 010-123-1234<br>
    <h2><%=session.getAttribute("loginUser") %>님이 로그인 하셨습니다
    <br></h2>
    저희 사이트에 방문해 주셔서 감사합니다.<br> 즐거운 시간 되세요.<br>
    </body>
    </html>

    071_LoginForm.jsp 실행
    071_LoginForm.jsp 실행하지 않고 073_main.jsp 실행 -> null이 출력됨

     

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>071_LoginForm.jsp</title>
    </head>
    <body>
    <%
    	if(session.getAttribute("loginUser")!=null){
    		response.sendRedirect("073_main.jsp");
    	} else{
    %>
    		<form method="post" action="072_Login_do.jsp">
    			<label for="id">아이디: </label>
    			<input type="text" id="id" name="id"><br>
    			<label for="pwd">암 &nbsp; 호: </label>
    			<input type="password" id="pwd" name="pwd"><br>
    			<input type="submit" value="로그인">
    		</form>
    <%
    	}
    %>
    </body>
    </html>
    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>073_main.jsp</title>
    </head>
    <body>
    <%
    	if(session.getAttribute("loginUser")==null){
    		response.sendRedirect("071_LoginForm.jsp"); 
            // 로그인 창으로 되돌아 옴
    	} else{
    %>
    		로그인 관리자 <br>전화번호 010-123-1234<br>
    		<h2><%=session.getAttribute("loginUser") 
            %>님이 로그인 하셨습니다<br></h2>
    		저희 사이트에 방문해 주셔서 감사합니다.<br> 즐거운 시간 되세요.
            <br>
    <%
    	}
    %>
    </body>
    </html>

    071_LoginForm.jsp 실행하지 않고 073_main.jsp 실행. 071_LoginForm.jsp 화면으로 돌아감

     

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>073_main.jsp</title>
    </head>
    <body>
    <%
    	if(session.getAttribute("loginUser")==null){
    		response.sendRedirect("071_LoginForm.jsp"); 
    	} else{
    %>
    		로그인 관리자 <br>전화번호 010-123-1234<br>
    		<h2><%=session.getAttribute("loginUser") 
            %>님이 로그인 하셨습니다
            <br></h2>
    		저희 사이트에 방문해 주셔서 감사합니다.<br> 즐거운 시간 되세요.
            <br>
    		
    		<form method="get" action="075_myPage_do.jsp">
    			<input type=submit value="마이페이지">
    		</form>
    		<form method="get" action="074_logout_do.jsp">
    			<input type=submit value="로그아웃">
    		</form>
    <%
    	}
    %>
    </body>
    </html>
    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <%
    	// session.removeAttribute("loginUser"); 
    
    	// 현재 사이트의 모든 세션을 삭제
    	session.invalidate();
    	
    	// response.sendRedirect("071_LoginForm.jsp");
    %>
    <script type="text/javascript">
    	alert("로그아웃 되었습니다.");
    	location.href="071_LoginForm.jsp";
    </script>

    로그아웃 클릭할 시 나오는 화면

     

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>075_myPage_do.jsp</title>
    </head>
    <body>
    <%
    if(session.getAttribute("loginUser")==null){
    	response.sendRedirect("071_LoginForm.jsp"); 
    } else{
    	response.sendRedirect("076_myPage.jsp");
    }
    %>
    </body>
    </html>
    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>076_myPage.jsp</title>
    </head>
    <body>
    <%
    if(session.getAttribute("loginUser")==null){
    	response.sendRedirect("071_LoginForm.jsp"); 
    } else{
    %>
    	아이디: <%=session.getAttribute("loginUser") %><br>
    	성명: 홍길동<br>
    	주소: 서울특별시 마포구...<br>
    	전화번호: 010-XXXX-XXXX<br>
    	주민등록번호: XXXXXX-XXXXXXX<br>
    	<input type="button" value="정보수정"/>
    <%
    }
    %>
    </body>
    </html>

    마이페이지 버튼 클릭할 시 나오는 화면

    'WEB > JSP' 카테고리의 다른 글

    [JSP] SQL  (0) 2022.09.09
    [JSP] bean  (0) 2022.09.09
    [JSP] cookie, session, removeAttribute  (0) 2022.09.09
    [JSP] servlet, action tag form  (0) 2022.09.09
    [JSP] login form, forward form, server object  (0) 2022.09.09

    댓글

Designed by Tistory.