JSP_basic. session 기초

dwanGim·2022년 3월 30일
0

JSP_basic

목록 보기
4/15

session

세션도 쿠키와 마찬가지로 서버와의 관계를 유지하기 위한 수단입니다.

단, 쿠키와 달리 클라이언트의 특정 위치에 저장하는 것이 아니라

서버 상에 객체 형태로 존재합니다.

서버 당 하나의 세션 객체를 가질 수 있습니다.

세션 객체는 브라우저 창을 종료하면 삭제됩니다.

따라서 세션은 서버에서만 접근이 가능하여 보안이 좋고

저장할 수 있는 데이터에 한계도 없습니다.

JSP에서는 session 내장 객체를 지원하여 세션의 속성을 설정할 수 있습니다.

아래의 메서드들로 세션을 설정합니다.

session 메서드

  1. setAttribute() - 세션에 데이터를 저장합니다.

  2. getAttribute() - 세션에 저장되어 있는 데이터를 얻습니다.

  3. getAttributeNames() - 세션에 저장되어 있는 모든 데이터의 세션 이름(key)을 얻습니다.

  4. getId() - 자동생성된 세션의 유니크한 아이디를 얻습니다.

  5. getCreationTime() - 세션이 생성된 시간을 구합니다.

  6. getLastAccessedTime() - 웹 브라우저가 가장 마지막에 세션에 접근한 시간을 구합니다.

  7. setMaxInactiveInterval() - 세션의 유효시간을 설정합니다. 초 단위로 기록합니다.

  8. getMaxInactiveInterval() - 세션의 유효시간을 얻습니다. 가장 최근 요청시점을 기준으로 카운트됩니다.

  9. removeAttribute() - 특정 세션을 삭제합니다.

  10. invalidate() - 모든 세션을 삭제합니다.

session 만들어보기

	/*
		세션은 쿠키와 마찬가지로 http 통신 데이터를 유지하기 위한 수단으로 사용합니다.
		
		세션에 데이터를 저장할 때는 JSP 내장객체 session에 지원하는
		setAttribute()메서드를 활용합니다.
		
		해당 메서드에 첫번째 값으로 세션의 이름을 적어주고
		
		두번째값으로 저장할 데이터를 저장해주면 됩니다.
	*/
						//세션아이디,		세션데이터
	session.setAttribute("id_session", "abc1234");
	session.setAttribute("name_session", "김말이");


%>

세션을 만들 때는 .setAttribute();

세션을 불러올 때는 getAttribute();입니다.

session 불러오기

 <%
 	
 	// object 자료형으로 받아오기 때문에 (String)으로 자료형 변환을 해줍시다.
 	String userId = (String)session.getAttribute("id_session");
 	String userName = (String)session.getAttribute("name_session");
 	out.println(userId + "<br/>");
 	out.println(userName + "<br/>");
 %>

세션에 저장된 데이터는 브라우저 창이 종료될 때까지 혹은

세션의 유효시간이 만료되기 전까지 웹어플리케이션의 모든

JSP 페이지에서 사용할 수 있습니다.

세션에 저장된 데이터를 가져오려면 session 객체의

getAttribute() 메서드를 사용하며

매게값으로 가져올 데이터의 세션명을

적어주면 됩니다.(request.getParameter()와 유사)

profile
배울 게 참 많네요.

0개의 댓글