파일명 : sessionTest.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!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>Insert title here</title>
</head>
<body>
<%
/*
세션: 클라이언트의 정보를 서버 메모리에 저장
중요한 정보(로그인 인증)
세션값 생성 session.setAttribute("이름", "값");
가져오기 session.getAttribute("이름");
한개삭제 session.removeAttribute("이름");
초기화 session.invalidate();
쿠키: 클라이언트(브라우저)의 텍스트파일로 저장.
서버에 부하를 주지 않고 값을 저장(광고, 아이디기억)
*/
// 세션값 가져오기
String name = (String) session.getAttribute("name");
%>
<h1>sessionTest.jsp 페이지</h1>
<h2>세션값: <%=name %></h2>
<input type="button" value="세션값저장" onclick="location.href='sessionSet.jsp'">
<input type="button" value="세션값삭제" onclick="location.href='sessionDel.jsp'">
<input type="button" value="세션값초기화" onclick="location.href='sessionInval.jsp'">
</body>
</html>
파일명 : sessionSet.jsp
<%@page import="java.util.Date"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!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>Insert title here</title>
</head>
<body>
<%
// 세션값 생성
session.setAttribute("name", "Session 값");
session.setAttribute("myDate", new Date());
session.setAttribute("number", 7); // new Integer(7)
// 이동
%>
<script>
alert('세션값 생성');
location.href = 'sessionTest.jsp';
</script>
</body>
</html>
파일명 : sessionDel.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!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>Insert title here</title>
</head>
<body>
<%
// 세션값 한개 삭제
session.removeAttribute("name");
%>
<script>
alert('세션값 삭제됨');
location.href = 'sessionTest.jsp';
</script>
</body>
</html>
파일명 : sessionInval.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!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>Insert title here</title>
</head>
<body>
<%
// 세션 초기화
session.invalidate();
%>
<script>
alert('세션 초기화됨');
location.href = 'sessionTest.jsp';
</script>
</body>
</html>
파일명 : sessionLogin.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!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>Insert title here</title>
</head>
<body>
<h1>로그인 페이지</h1>
<hr>
<form action="sessionLoginPro.jsp" method="post">
아이디: <input type="text" name="id"><br>
패스워드: <input type="password" name="passwd"><br>
<input type="submit" value="로그인">
</form>
</body>
</html>
파일명 : sessionLoginPro.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!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>Insert title here</title>
</head>
<body>
<h1>sessionLoginPro.jsp 페이지</h1>
<hr>
<%
// 파라미터값 가져오기 "id" "passwd"
// 사용자가 로그인 시 입력한 값
String id = request.getParameter("id");
String passwd = request.getParameter("passwd");
// DB의 아이디, 패스워드
String dbId = "admin";
String dbPass = "1234";
// 문자열 비교 문자열.equals("문자열")
// 폼의 아이디와 DB의 아이디가 같으면
// 폼의 패스워드와 DB의 패스워드가 같으면
// 세션값 생성 ("id",id값) 후 sessionMain.jsp 이동
// 폼의 패스워드와 DB의 패스워드가 다르면 "패스워드 틀림"
// 틀리면 "아이디 없음"
if (id.equals(dbId)) { // 아이디 있음
if (passwd.equals(dbPass)) { // 로그인작업
// 세션생성
session.setAttribute("id", id);
out.println("로그인 인증됨<br>");
response.sendRedirect("sessionMain.jsp");
%>
<script>
// alert('로그인 인증되었습니다.');
// location.href = 'sessionMain.jsp';
</script>
<%
} else { // 패스워드 틀림
out.println("패스워드 틀림<br>");
}
} else { // 아이디 없음
out.println("아이디 없음<br>");
}
%>
</body>
</html>
파일명 : sessionLogout.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!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>Insert title here</title>
</head>
<body>
<h1>sessionLogout.jsp 로그아웃 페이지</h1>
<%
// 세션 초기화
session.invalidate();
// 이동 sessionLogin.jsp
// response.sendRedirect("sessionLogin.jsp");
%>
<script>
alert('로그아웃 되었습니다.');
location.href = 'sessionLogin.jsp';
</script>
</body>
</html>
파일명 : sessionMain.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!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>Insert title here</title>
</head>
<body>
<%
// 세션값 가져오기
String id = (String) session.getAttribute("id");
// 세션값이 없으면 (null이면) sessionLogin.jsp 이동
if (id == null) {
response.sendRedirect("sessionLogin.jsp");
}
%>
<h1>sessionMain.jsp 메인 페이지</h1>
<hr>
<%=id %>님이 로그인하셨습니다.<br>
<input type="button" value="로그아웃" onclick="location.href='sessionLogout.jsp'">
</body>
</html>
'IT > Jsp' 카테고리의 다른 글
jsp - DB연결, insert, select, update, delete (0) | 2018.09.14 |
---|---|
jsp - 오라클 JDBC 연동테스트 (0) | 2018.09.14 |
jsp - cookie 저장, 삭제 (0) | 2018.09.13 |
jsp - scope (page, request, session, application) (0) | 2018.09.12 |
jsp - request, response (0) | 2018.09.11 |