session 내장객체

  • 웹 브라우저에 관한 정보를 저장하고 관리하는 내장 객체
  • javax.servlet.http.HttpSession? 객체 타입
  • session = pageContext.getSession();로 생성한다.
  • 웹 브라우저당(클라이언트) 1개가 할당 회원관리에서 사용자 인증 관련 작업수행에 사용

session 메소드

session 내장객체의 중요 메소드

 java.lang.Object getAttribute(java.lang.String name)

Returns the object bound with the specified name in this session, or null if no object is bound under the name.

if(session.getAttribute("pangCnt") != null) {
int pangCount = (Integer)session.getAttribute("pangCnt"); //타입 캐스팅 형변환
out.print(pangCount * 100 + "원 <br />");
out.println(Integer.parseInt(session.getAttribute("pangCnt").toString())*100 + "원"); //레퍼클래스 이용
  • getAttribute 메소드 리턴 타입은 object이므로 변수에 저장시 형변환 필요
    • 타입 캐스팅 형변환이나, 래퍼클래스 이용 가능

${sessionScope.gender == 'M' ? '남성' : '여성'  }
  • EL 표현식으로도 사용 가능

java.util.Enumeration<java.lang.String>  getAttributeNames()

Returns an Enumeration of String objects containing the names of all the objects bound to this session.

out.print("getAttributeNames() : ");
Enumeration<String> attrNames = session.getAttributeNames();
out.print(attrNames.nextElement()+"<br />");
  • getAttributeNames 메소드 리턴타입은 Eumeration 객체 타입으로 상기와 같이 이용 가능

 void removeAttribute(java.lang.String name)

Removes the object bound with the specified name from this session.

 void setAttribute(java.lang.String name, java.lang.Object value)

Binds an object to this session, using the name specified.

session.setAttribute("name", request.getParameter("name"));
session.setAttribute("id", request.getParameter("id"));
session.setAttribute("getder", request.getParameter("getder"));
session.setAttribute("hobby", request.getParameterValues("hobby"));
session.setAttribute("pwd", request.getParameter("pwd"));
session.setAttribute("intro", request.getParameter("intro"));
session.setAttribute("job", request.getParameter("job"));
session.setAttribute("upload", request.getParameter("upload"));
session.setAttribute("pangCnt", request.getAttribute("pangCnt"));

 void setMaxInactiveInterval(int interval)

Specifies the time, in seconds, between client requests before the servlet container will invalidate this session.

 void invalidate()

Invalidates this session then unbinds any objects bound to it.