반응형

  HttpSessionListener를 이용해 웹 페이지 로그인 시 접속자수와 모든 접속자 ID를 표시해 주는 기능을 구현하겠습니다.

 

Login2.html

  첫번째 서블릿인 LoginTest 클래스 파일에는 setAttribute()를 이용해 loginUser를 세션에 바인딩하면 LoginImpl 클래스 에 구현된 이벤트 핸들러를 이용해 접속자수를 1 증가시킵니다. 그리고 user_list에 접속자 ID를 저장한 다음ServletContext 객체에 바인딩합니다.

LoginTest

 

LogoutTest 서블릿에서는 로그아웃 링크를 클릭하면 접속자 수를 1 감소시키고 user_list에 로그아웃한 접속자 ID를 삭제한 후 다시 user_list를 ServletContext 객체에 바인딩하도록 설정합니다.

LogoutTest

  LoginImpl 클래스는 HttpSessionListener를 구현해 세션 생성과 소멸 시 이벤트를 처리하는 핸들러입니다.

  중요한 것은 LoginImpl에서 구현한 HttpSessionBindingListener와는 다르게 HttpSessionListener는 반드시 리스너를 구현한 이벤트 핸들러를 애너테이션을 이용해서 등록해야 된다는 것입니다.

  리스너를 등록한 이벤트 핸들러를 이용해서 세션을 생성할 때는 SessionCreated()메서드로 이벤트를 처리하고, 세션을 삭제할 때는 sessionDestroyed() 메서드로 이벤트를 처리합니다.

LoginImpl

 

반응형

'2020 > JSP SERVLET' 카테고리의 다른 글

JSP 변환 과정  (0) 2019.12.11
JSP의 등장  (0) 2019.12.10
HttpSessionBindingListener 로그인 접속자 수 표시  (0) 2019.12.10
Servlet Listener API  (0) 2019.12.09
Filter API 사용자 정의 필터 만들기  (0) 2019.12.09
블로그 이미지

꽃꽂이하는개발자

,