WebApp JSP session 정보 얻기

황제낙엽 2009.01.21 15:07 조회 수 : 127 추천:184

sitelink1  
sitelink2  
sitelink3  
sitelink4  
sitelink5  
sitelink6  

※SESSION 정보얻기※

getId() 메소드 : 세션 ID를 되돌리는 메소드로서 해당 세션을 가리키는 고유 ID값을 String형으로 변환한다.

 

getCreationTime() 메소드 : getCreation 메소드는 세션이 만들어진 시간을 반환.웹브라우저를 띄울때 마다

                                      세션이 생성되므로 그때의 시간을 되돌린다.

 

getLastAccessedTime() 메소드 : 이미 띄운 웹브라우저에서 다른 페이지로 이동했다가 돌아오는 경우

                                             사이트를 떠날 당시 시간을 얻고 싶을때 사용한다.

                                             getLastAccessedTime메소드는

                                             해당 세션이 client가 마지막으로 request를 보낸 시간을 long형으로

                                             반환한다.

 

isNew() 메소드 : 해당 세션이 처음 생성되었다면 true값을 반환하고 이전에 생성되었다면

                         false값을 반환하는 메소드

                         웹브라우저를 새로 띄워서 사이트에 접속하면 true 다른 페이지로 갔다가 해당 페이지로

                         돌아왔을 경우는 false를 리턴한다.

 

getMaxInactiveInterval() 메소드 : 세션의 유효시간 은 사용자의 마지막 요청(request)이 있은 후부터

                                              tomcat 홈의 conf 폴더의 web.xml파일에 저장되어있다.

                                              기본적으로 30분이다. 유효시간 단위는 분이다.

                                 web.xml : <session-config>

                                              <session-timeout>30</session-timeout>

                                              </session-config>

예문)

file 이름 : infoSession.jsp

<%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%>
<%@ page import="java.util.*" %>
<html>
<body>
<center><h3>[ 세션 정보를 얻어오는 메소드를 사용한 예제 ]</h3></center>
<hr>
<%
//고유한 세션 객체의 ID를 되돌려준다.
String id_str=session.getId();

//세션에 마지막으로 엑세스한 시간을 되돌려준다.
long lasttime=session.getLastAccessedTime();

//세션이 생성된 시간을 되돌려 준다.
long createdtime=session.getCreationTime();

//세션에 마지막으로 엑세스한 시간에서 세션이  생성된 시간을 빼면
//웹사이트에 머문시간이 계산된다.
long time_used=(lasttime-createdtime)/60000;

//세션의 유효시간 얻어오기
int inactive=session.getMaxInactiveInterval()/60;

//세션이 새로 만들어졌는지 알려 준다.
boolean b_new=session.isNew();
%>

[1] 세션 ID는 [<%=session.getId()%>] 입니다.<br><hr>
[2] 당신의 웹사이트에 머문 시간은 <%=time_used%> 입니다.<br><hr>
[3] 세션의 유효시간은 <%=inactive%> 분입니다.<br><hr>
[4] 세션이 새로 만들어 졌나요?<br><hr>
<%
if(b_new)
 out.println("예 !! 새로운 세션을 만들었습니다."); 
else
 out.println("아니오 !! 새로운 세션을 만들지 않았습니다.");
%>
<hr>
</body>
</html>

Result ==>
 

[ 세션 정보를 얻어오는 메소드를 사용한 예제 ]


[1] 세션 ID는 [53C42CA9973718029CD17B48F3A9756F] 입니다.


[2] 당신의 웹사이트에 머문 시간은 0 입니다.


[3] 세션의 유효시간은 30 분입니다.


[4] 세션이 새로 만들어 졌나요?


아니오 !! 새로운 세션을 만들지 않았습니다.


 

번호 제목 글쓴이 날짜 조회 수
171 메모리 유출과 약한 참조 황제낙엽 2010.01.26 616
170 Methods of the Matcher Class 황제낙엽 2010.01.19 120
169 Pattern.matches() , Matcher.matches() , Matcher.find() file 황제낙엽 2010.01.19 105
168 java.lang.IllegalArgumentException 황제낙엽 2010.01.18 130512
167 org.apache.commons.fileupload.servlet.ServletFileUpload 를 이용한 파일 업로드 file 황제낙엽 2009.11.19 129
166 Error reading tld listeners java.lang.NullPointerException 황제낙엽 2009.10.14 67
165 Cannot find the tag library descriptor for “http://java.sun.com/jsp/jstl/core 황제낙엽 2009.10.14 1006
164 Transfer-Encoding: chunked VS Content-Length 황제낙엽 2009.09.17 154
163 서블릿 응답 헤더(Response Header) 황제낙엽 2009.09.17 80
162 같은 문자열인데도 정규식에서 해당 문자열을 파싱하지 못하는 경우 황제낙엽 2009.08.08 39
161 MultipartRequest (cos.jar)와 서블릿을 이용한 업로드 file 황제낙엽 2009.06.19 384
160 [대용량 파일 업로드] multipart form parser - http file upload, database 저장 java class 연재2 file 황제낙엽 2009.06.19 1831
159 [대용량 파일 업로드] multipart form parser - http file upload 기능 java class 연재1 file 황제낙엽 2009.06.19 1436
158 [reflection/리플렉션] Class.forName 황제낙엽 2009.05.27 101
157 문자열 내의 공백을 제거하는 간단한 정규식 황제낙엽 2009.05.20 88
156 문자열에서 특수 문자 (Escape Sequence) 처리 file 황제낙엽 2009.02.20 1322
155 정규표현식을 사용하는 String클래스의 replaceAll() 함수 개량 황제낙엽 2009.02.09 219
154 File 복사 함수 황제낙엽 2009.02.08 31
» JSP session 정보 얻기 황제낙엽 2009.01.21 127
152 서버상의 로컬경로 (실제경로) 관련 환경변수 황제낙엽 2009.01.21 339