세션 (Session)
request.getSession() : Servlet에서 HttpSession 객체 얻기 위하여 request.getSession() 함수를 이용
HttpSession session = request.getSession();
setAttribute() : 세션 영역에 속성 값을 설정할 때 setAttribute() 함수를 이용
session.setAttribute("속성명",속성값);
.getAttribute() : 세션 영역에 저장된 속성 값을 이용할 때 getAttribute() 함수를 이용
리턴값이 Object 형이므로 변수에 저장해 사용할 때 타입 지정을 해준다. 값이 없다면 null을 리턴한다.
.getAttribute()는 선택한 요소(element)의 특정 속성(attribute)의 값을 가져옵니다.
문법
element.getAttribute( 'attributename' )
String ses = (String) session.getAttribute("속성명");
ex)
var jb = document.getElementById( 'xyz' ).getAttribute( 'title' );
는 id의 값이 xyz인 요소의 title 속성 값을 변수 jb에 저장합니다.
■ 세션값 넣기
session().setAttribute("SS_Userid", "관리자")
request.getSession().setAttribute("SS_Userid", "관리자")
■ 세션값 읽기
(String)session.getAttribute("SS_Userid") // String 형식
(String)request.getSession().getAttribute("SS_Userid") // String 형식
(Integer)session.getAttribute("SS_Userid") // Integer 형식
(Integer)request.getSession().getAttribute("SS_Userid") // Integer 형식
■ 세션 타임아웃 설정
session.setMaxInactiveInterval(60*60*1);
■ 세션값 초기화하기
session.invalidate();
■ 세션변수 목록 보기
javax.servlet.http.HttpSession의 getAttributeNames 사용하시면 됩니다.
java.util.Enumeration을 return합니다.
사용예)
Enumeration enum=session.getAttributeNames();
String tmp="";
while (enum.hasMoreElements())
{
tmp=(String)enum.nextElement();
out.print("<br>"+tmp+":"+session.getAttribute(tmp));
}