๐ปsession ๊ฐ์ฒด
ํด๋ผ์ด์ธํธ์ ์๋ฒ ๊ฐ์ ์ํ๋ฅผ ์ ์งํ๊ธฐ ์ํ ๋ฉ์ปค๋์ฆ์ผ๋ก, ์๋ธ๋ฆฟ๊ณผ JSP์์ ์ฌ์ฉ๋๋ค.
์ด ๊ฐ์ฒด๋ฅผ ์ฌ์ฉํ๋ฉด ํด๋ผ์ด์ธํธ์ ์์ฒญ ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ๊ณต์ ํ๊ฑฐ๋ ์ ์งํ ์ ์๋ค.
์ด๋ฅผ ํตํด ๋ก๊ทธ์ธ ์ํ ์ ์ง, ์ฅ๋ฐ๊ตฌ๋ ์ ๋ณด ์ ์ฅ ๋ฑ ๋ค์ํ ๊ธฐ๋ฅ์ ๊ตฌํํ ์ ์๋ค.
getId()
- ํ์ฌ ์ธ์ ์ ๊ณ ์ ์๋ณ์์ธ ์ธ์ ID๋ฅผ ๋ฐํํ๋ค.
session.getId()
getCreationTime()
- ์ธ์ ์ด ์์ฑ๋ ์๊ฐ์ ๋ฐํํ๋ค.
- ๋ฐํ๊ฐ์ 1970๋ 1์ 1์ผ๋ถํฐ ๊ฒฝ๊ณผํ ์๊ฐ์ ๋ฐ๋ฆฌ์ด ๋จ์๋ก ๋ํ๋ธ๋ค.
session.getCreationTime()
getMaxInactiveInterval()
- ์ธ์ ์ด ์ผ๋ง ๋์ ์ ํจํ์ง๋ฅผ ์ด ๋จ์๋ก ๋ฐํํ๋ค. ์ด ๊ธฐ๊ฐ์ด ์ง๋๋ฉด ์๋ฒ๋ ์ธ์ ์ ๋ง๋ฃ์ํจ๋ค.
session.getMaxInactiveInterval()
isNew()
- ํ์ฌ ์์ฒญ์ด ์๋ก์ด ์ธ์ ์ ์์ํ ๊ฒ์ธ์ง ์ฌ๋ถ๋ฅผ ๋ฐํํ๋ค. ์๋ก์ด ์ธ์ ์ด ์์๋๋ฉด true๋ฅผ ๋ฐํํ๊ณ , ๊ธฐ์กด ์ธ์ ์ ์ฌ์ฉํ๋ฉด false๋ฅผ ๋ฐํํ๋ค.
session.isNew()
getAttribute()
- ์ง์ ๋ ์ด๋ฆ์ ์์ฑ ๊ฐ์ ๋ฐํํ๋ค. ์ด ์์ฑ์ ์ธ์ ์ ์ ์ฅ๋ ๋ฐ์ดํฐ๋ฅผ ์๋ฏธํ๋ค.
session.getAttribute("data")
setAttribute()
- ์ธ์ ์ ์ง์ ๋ ์ด๋ฆ์ผ๋ก ์์ฑ์ ์ ์ฅํ๋ค. ์ดํ์ ํด๋น ์ด๋ฆ์ผ๋ก ์์ฑ์ ์กฐํํ ์ ์๋ค.
session.setAttribute("data", "ํ๊ธธ๋")
removeAttribute()
- ์ธ์ ์์ ์ง์ ๋ ์ด๋ฆ์ ์์ฑ์ ์ ๊ฑฐํ๋ค.
session.removeAttribute("data");
setMaxInactiveInterval()
- ์ธ์ ์ ์ ํจ ์๊ฐ์ ์ค์ ํ๋ค.
- ์ด ์๊ฐ์ด ์ง๋๋ฉด ์ธ์ ์ด ๋ง๋ฃ๋๋ค. interval์ ์ด ๋จ์๋ก ์ค์ ๋๋ค.
- ๊ธฐ๋ณธ์ ์ผ๋ก 30๋ถ์ผ๋ก ์ค์ ๋์ด์๋ค. ์ด ์ค์ ๊ฐ์ ๊ฑฐ์ ์์ ํ์ง ์๋๋ค.
session.setMaxInactiveInterval(30); //30์ด
invalidate()
- ํ์ฌ ์ธ์ ์ ๋ฌดํจํ์ํจ๋ค.
- ์ด ๋ฉ์๋๋ฅผ ํธ์ถํ๋ฉด ํ์ฌ์ ์ธ์ ์ ์ข ๋ฃ๋๊ณ ์๋ก์ด ์ธ์ ์ ์์ํ๋ค.
session.invalidate();
๐ป์ฝ๋์์
<%@page import="java.util.Calendar"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>ex15_session</title>
<link rel="stylesheet" href="http://pinnpublic.dothome.co.kr/cdn/example-min.css">
</head>
<body>
<h2>(ํ์ฌ)์ธ์
์ ๋ณด</h2>
<div>Session ID: <%= session.getId() %></div>
<div>
Session Create Time:
<%
Calendar time = Calendar.getInstance();
time.setTimeInMillis(session.getCreationTime());
out.println(String.format("%tF %tT", time, time));
%>
</div>
<div>
Session Max Inactive Interval:
<%= session.getMaxInactiveInterval() %>
</div>
<div>
Session isNew:
<%= session.isNew() %>
</div>
<div>
Session Data:
<%
if(session.getAttribute("data") != null){
out.println(session.getAttribute("data"));
} else {
out.println("๋ฐ์ดํฐ ์์");
}
%>
</div>
<script src="https://code.jquery.com/jquery-1.12.4.js"></script>
<script src="http://pinnpublic.dothome.co.kr/cdn/example-min.js"></script>
</body>
</html>
'SERVER(Servlet, JSP)' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[JSP] ์ด๋ฏธ์ง ๋ทฐ์ด(์ ๋ก๋ ๋ฐ ์ญ์ ์ฒ๋ฆฌ) (0) | 2023.10.18 |
---|---|
[JSP] cos library๋ฅผ ํ์ฉํ ํ์ผ ์ ๋ก๋/๋ค์ด๋ก๋ (0) | 2023.10.18 |
[JSP] JSP ๋ด์ฅ ๊ฐ์ฒด (request, pageContext, session, application ) (0) | 2023.10.18 |
[JPS] request : ํด๋ผ์ด์ธํธ์์ ์๋ฒ๋ก ์ ์กํ ๋์ ์ฌ๋ฌ๊ฐ์ง ๊ด๋ จ ์ ๋ณด ๊ฐ์ ธ์ค๊ธฐ (0) | 2023.10.18 |
[JSP] JSP ๋ด์ฅ ๊ฐ์ฒด์ request (0) | 2023.10.17 |