본문 바로가기

국비

01.19 국비학원 76일차 (리스너)

리스너(Listener)

    - 서블릿 컨테이너에서 발생하는 이벤트에 대한 처리를 할 수 있는 기능

    - Context 객체, Session 객체, Request 객체에 대한 생성/소멸 및 속성 추가/수정/삭제 에 대한 동작을 이벤트로

      감지하고 처리할 수 있게 도와준다.

      (이러한 이벤트가 발생함과 동시에 특정 행동(메서드나 함수 실행)을 하는데 이를 이벤트 핸들링 이라 한다.)

    - @WebListener 어노테이션으로 등록 하거나 web.xml 에 <Listener> 태그를 사용하여 해당 기능을 등록한다.

<listener>       // 패키지명.클래스명
  	<litener-class>listener.MyServletContextListener</litener-class>
</listener>

    - ServletContextListener, ServletContextAttributeListener, HttpSessionListener, HttpSessionAttributeListener,                        HttpSessionActivationListener, HttpSessionBindingListener, ServletRequestListener, ServletRequestAttributeListener

      인터페이스가 있으며 이를 통해 구현 한다.

코끼리를 냉장고에 넣는 방법 :: [서블릿/JSP] 리스너(Listner)란? 이벤트 리스너의 개념 설명. 구현 및 등록하기 (tistory.com)

 

[서블릿/JSP] 리스너(Listner)란? 이벤트 리스너의 개념 설명. 구현 및 등록하기

리스너란? 이벤트, 리스너, 이벤트핸들러 간략 개념정리 리스너는 단어의 뜻으로 보자면 (소리를) 듣는 사람, 청취자입니다. 프로그래밍에서의 리스너는 무언가 소리를 듣는 사람을 뜻하기 보다

dololak.tistory.com

 

request.setAttribute() : 하나의 요청, 응답 사이에서만 유효 (다른 요청,응답 참조 불가)

session.setAttribute() : 동일한 세션ID를 가지면 사용자별, 브라우저별 공유 저장소로 유효 범위를 가짐

servletContext() : 웹 서버(어플리케이션) 안에서 공유 (전역 범위라 생각하기)

유효 범위 크기 : servletContext > session > request

 

HttpSessionListener 예시. 세션이 생성됐을 때 "login" 속성값을 false 로 지정하고 세션이 소멸될 때 "세션이 소멸되었습니다" 출력되게 함