gwooden_코린이
이클립스 JSP 세션(session) 본문
728x90
1. JSP 세션(session)
서버에 저장이 됨
보안이 좋음
<%@ 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>세션 생성 페이지</h1>
<%
session.setAttribute("id", "abc");
session.setAttribute("pw", "1234");
session.setAttribute("age", 25);
%>
<a href="showSession.jsp">세션 보기</a>
<a href="showSessionAll.jsp">모든세션 보기</a>
</body>
</html>
<a href="deleteSession.jsp">세션 제거</a>
<%@ 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>세션 출력 페이지</h1>
<%
String id = (String)session.getAttribute("id");
String pw = (String)session.getAttribute("pw");
Integer age = (Integer)session.getAttribute("age");
%>
id : <%=id %> <br>
pw : <%=pw %> <br>
age : <%=age %>
</body>
</html>
<%@page import="java.util.Enumeration"%>
<%@ 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>모든 세션 한번에 출력해주는 페이지</h1>
<%
Enumeration names = session.getAttributeNames(); //리턴을 열거형으로 해서 Enumeration을 사용해야 됨
while(names.hasMoreElements()) { //현재 위치에서 다음 데이터가 있으면 T 아니면 F
String name = names.nextElement().toString();
String value = session.getAttribute(name).toString(); //여러 값을 뽑아올떄는 toString를 사용해줘야 된다. 객체 정보를 뽑아올떄
out.print(name + "=" + value + "<br>");
}
%>
</body>
</html>
<%@page import="java.util.Date"%>
<%@page import="java.text.SimpleDateFormat"%>
<%@ 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>세션 정보 출력 페이지</h1>
<%
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
Date createDate = new Date();
Date lastDate = new Date();
String id = session.getId(); //세션 id
//1970-1-1 부터 ms 리턴
long createTime = session.getCreationTime(); //세션 생성된 시간
long lastTime = session.getLastAccessedTime(); //마지막 엑세스 시간
long useTime = (lastTime - createTime) / 1000;
//리턴값은 초단위로 리턴
int inActive = session.getMaxInactiveInterval(); //세션 유효시간 기본값(30분)
boolean isNew = session.isNew(); //새 세션이 생성 -> True, 아니면 False
createDate.setTime(createTime);
lastDate.setTime(lastTime);
%>
세션 id : <%=id %> <br>
세션 생성 시간 : <%=createTime %> <br>
세션 생성 날짜 : <%=sdf.format(createDate) %> <br>
세션 마지막 엑세스 시간 : <%=lastTime %> <br>
세션 마지막 엑세스 날짜 : <%=sdf.format(lastDate) %> <br>
웹 페이지 머눈 시간 : <%=useTime %> <br>
세션 유효시간 : <%=inActive %> <br>
새 세션 ? : <%=isNew %> <br>
</body>
</html>
<%@ 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>세션 삭제 페이지</h1>
<%
session.removeAttribute("pw");
/* session.invalidate(); */ //세션 모두 삭제
%>
<a href="showSessionAll.jsp">세션 확인</a>
</body>
</html>
728x90
'JSP&Servlet' 카테고리의 다른 글
자바 빈(java bean) model (0) | 2023.01.25 |
---|---|
세션을 이용한 로그인 구현해보기 (0) | 2023.01.25 |
이클립스 JSP/서블릿 쿠키(Cookie) (0) | 2023.01.20 |
이클립스 JSP MVC 모델 1, 모델 2 코드 작성해보기 (0) | 2023.01.20 |
이클립스 JSP 내장 객체 (0) | 2023.01.19 |
Comments