JSP 로그인 정보
JSP 로그인 정보
- 브라우저가 처음에 페이지를 요청
- 브라우저 : 100번 세션ID를 발급
- 서버 : 발급해준 100 세션ID를 이용하여, 100번 사용자만을 위한 관리할 수 있는 환경조성(세션생성)
- 작업 : 로그인 -> 로그인 정보 확인 -> session.setAttrubute(“userId”, userId);
- 위의 코드가 실행이 되면, 서버측의 100번 사용자를 위한 공간에 정보를 저장한다
- 세션종료(소멸)
- 세션 유지시간 - WAS 프로그램마다 다르고, 설정이 가능
- 세션이 유지되는 시간에 사이트를 재방문하면, 시간은 자동연장
- 세션이 유지되는 시간이 지나서, 이후에 방문하면 세션은 종료(소멸)
loginForm.jsp 파일
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
// 단위 : 초
// session.setMaxInactiveInterval(10);
// 시간확인방법
out.println(session.getMaxInactiveInterval());
%>
<h3>로그인/로그아웃 페이지</h3>
<% if(session.getAttribute("userId") == null ){ %>
<form method="post" action="loginOk.jsp">
<div id="auth">
<dl>
<dd>
<label for="userId">아이디</label>
<input type="text" name="userId" id="userId" placeholder="user01" autofocus required>
</dd>
<dd>
<label for="userPw">비밀번호</label>
<input type="password" name="userPw" id="userPw" placeholder="1234" autofocus required>
</dd>
<dd>
<input type="submit" value="로그인">
</dd>
</dl>
</div>
</form>
<%}else{ %>
<form method="post" action="logout.jsp">
<div id="auth">
<dl>
<dd>
<%=session.getAttribute("userId") %>님이 로그인중입니다.
</dd>
<dd>
<input type="submit" value="로그아웃">
</dd>
</dl>
</div>
</form>
<%} %>
</body>
</html>
loginOk.jsp 파일
<%
String userId = request.getParameter("userId"); //input의 name 명을 가져옴
String userPw = request.getParameter("userPw");
//db에서 로그인정보 확인작업 - 생략
// user01/1234 임의로 아이디 비밀번호 부여
if(userId.equals("user01") && userPw.equals("1234")){
// 서버측의 메모리에 사용자(브라우저)에게 발급해준 세션ID로 관리되는 기억장소에 로그인에 성공한 상태를 저장 및 관리한다
session.setAttribute("userId", userId);
}
response.sendRedirect("loginForm.jsp");
%>
logout.jsp 파일
<%
// 세션소멸하는 기능
session.invalidate();
response.sendRedirect("loginForm.jsp");
%>
댓글남기기