Session đơn giản là 1 cách để chúng ta lưu lại dữ liệu của người dùng sử dụng website. Giá trị của session được lưu trong một tập tin trên máy chủ. Ví dụ khi bạn đăng nhập vào một trang web và đăng nhập với tài khoản đã đăng ký trước đó. Máy chủ sau khi xác thực được thông tin bạn cung cấp là đúng nó sẽ sinh ra một tập tin (hay chính là session của trình duyệt của bạn) chứa dữ liệu cần lưu trữ của người dùng.
Make session - setAttribute
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h1> Make session 🥨🍪🥨🍪</h1>
<ol>
Session : Client의 정보를 우지하기 위해서 사용하는 방법
<li>저장위치: ServerPC</li>
<li>보안 : 우수</li>
<li>자원 : client의자원을 사용해서 server에 연향 x</li>
<li>용량:서비스 허용하는 만큼 가능
Ctril+Space to import</li>
<li>저장형식: 객체저장 가능</li>
</ol>
<%
//1. Sesson값 생성 setAttribute(name(String),value(Object))
session.setAttribute("id","test");
session.setAttribute("age",20);
//어차피 서버가 알아서 세션 아이딜를 보여줄 거기 때문에 따로 응답x
%>
<a href ="ex04_showSession.jsp">Session 확인</a>
</body>
</html>
Show session - getAttribute
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
//session값 가져오기
String id = (String)session.getAttribute("id");
Integer age = (Integer)session.getAttribute("age");
%>
아이디: <%=id %><br>
나이: <%=age %><br>
<a href = "ex05_deleteSession.jsp">Session삭제</a>
</body>
</html>
Delete session - removeAttribute
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
session.removeAttribute("id");
session.removeAttribute("age");
%>
<a href = "ex04_showSession.jsp">Session확인</a>
</body>
</html>
in login program - import session → setAttribute
if (login_dto != null) {
HttpSession session = request.getSession();
session.setAttribute("login_dto",login_dto);
response.sendRedirect("./LoginSuccess.jsp?name=" + name);
login success - getAttribute
<% MemberDTO login_dto = (MemberDTO)session.getAttribute("login_dto");%>
<%=login_dto.getName() %>