반응형
@WebListener Annotation은 Servlet-api 라이브러리를 가져와서 사용하는 어노테이션으로,
어노테이션을 달면 톰캣에게 이클래스는 Listener이다 라고 알려준다.
톰캣에게 나는 리스너다 라고 알려준뒤 ServletContextListener interface를 받아, contextInitialized와 contextDestroyed를 오버라이딩하여 메서드를 사용할 수 있다.
#여기서 리스너란?
특정 이벤트(특정한 사건)가 발생하기를 '귀 기울여' 기다리다가 실행되는 컴포넌트(메서드나 함수)를 뜻한다.
@WebListener
public class ContextLoaderListener implements ServletContextListener {
@Override
public void contextInitialized(ServletContextEvent event) {
System.out.println("###contextInitialized###");
}
@Override
public void contextDestroyed(ServletContextEvent event) {
System.out.println("###contextDestroyed###");
}
}
물론 xml에다가 설정하여 사용할 수 있지만, @WebListener 어노테이션만으로도 가능하기 때문에 편하게 쓰자..
contextInitialized(); : 컨텍스트 초기화된 후 호출되는 메서드
contextDestroyed(); : 컨텍스트 종료시 호출되는 메서드
추가 ServletContextEvent를 파라미터로 받는데, getServletContext()를 통해 servletContext를 가져올수 있다.
서버 구동, 종료 시 필요한 로직이 있다면 해당 부분에서 사용가능하다.
반응형
'Spring-JSP' 카테고리의 다른 글
[Spring-JSP] Transaction 전파 속성 (0) | 2021.08.31 |
---|---|
[Spring-JSP] 어플리케이션 백그라운드 데몬쓰레드 + ServletContextListener (0) | 2021.07.12 |
[Spring-JSP] 초기화 메서드 Spring Bean 생명주기 (0) | 2021.07.09 |
[Spring-JSP] Json 을 HashMap으로 변환하는 법 (0) | 2021.06.04 |
[Spring-JSP] ModelMapper란? 사용법 (0) | 2021.06.02 |