[JSP] 세션 Session 설정하기 지우기
by mini_min[JSP] 세션 Session 설정하기 지우기
✔️ 세션이란?
: 세션은 둘 이상의 page request 에서 사용자를 식별하거나, 웹 사이트를 방문하고 해당 사용자에 대한 정보를 저장하는 방법을 제공한다.
: Servlet container 는 HttpSession 를 사용하여 HTTP client - HTTP server 간의 세션을 생서한다.
: 세션은 한 명의 사용자에 해당된다. 브라우저 당 하나의 세션 객체만 생성된다.
: 서버는 Cookie, rewriting URL 와 같은 방법으로 세션을 유지하면서 관리할 수 있다.
: 객체를 세션에 바인딩하여 사용자 정보를 유지할 수 있다.
✨ 로그인 처리 등에서 이용된다.
👩💻 isNew() : 클라리언트가 세션 iD를 모르는 상태(처음 접속한 상태)에서는 true 를 반환한다.
true 는 클라이언트 정보가 서버에 저장되지 않은 상태이다.
만약 세션이 설정된 경우에는 현재의 세션을 돌려준다.
<p> isNew() : <%=session.isNew() %> </p>
✔️ 세션 등록하기
서블릿에서 세션 객체 : HttpSession session = request.getSession();
EL 에서 세션 객체 : sessionScope
- 세션 유지기간 설정 (톰캣은 기본 30분이다)
session.setMaxInactiveInterval(60*20 );
- 세션에 정보 저장
session.setAttribute("name", "홍자바"); //string, object
session.setAttribute("age", 20);
✔️ 세션 가져오기
session.getAttribute 로 세션 값을 가져온다.
String name = "";
int age = 0;
try{
// 세션에 저장된 값
name = (String)session.getAttribute("name");
age = (Integer)session.getAttribute("age");
} catch(Exception e){
}
//세션 유지시간
int interval = session.getMaxInactiveInterval();
//세션 아이디
String id = session.getId();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
String reg_date = sdf.format(new Date(session.getCreationTime()));
String last_date = sdf.format(new Date(session.getLastAccessedTime()));
<p> 이름 : <%=name %>, 나이 : <%=age %> </p>
<p> EL을 이용하여 세션값 가죠오기 : ${sessionScope.name }, ${sessionScope.age}</p>
<p> 세션 최대 유지시간 : <%=interval / 60 %> 분 </p>
<p> 세션 아이디 : <%=id %> </p>
<p> 세션 생성 시간 : <%=reg_date %> </p>
<p> 세션 마지막 접속 시간 : <%=last_date %> </p>
✔️ 세션 지우기
session.getAttribute
//세션에 저장된 모든 속성값을 지우고 세션을 초기화
session.invalidate();
'JSP' 카테고리의 다른 글
[JSP/Servlet] 파일처리(파일 업로드) / 서블릿 파일 업로드 (1) | 2022.10.11 |
---|---|
[Servlet] 방명록 기능 Servlet (0) | 2022.10.10 |
[JSP] 쿠키 설정 / 가져오기 (Cookie) (0) | 2022.10.10 |
[JSP] 글 수정,삭제 Servlet 서블릿/DAO (0) | 2022.10.06 |
[JSP] 글 리스트 Servlet 서블릿/DAO (1) | 2022.10.05 |
블로그의 정보
개발자 미니민의 개발로그
mini_min