[web.xml] listener

2021. 5. 12. 12:00개발/[Config]

정의


웹 Application이 시작되거나 종료될 때 호출할 Method를 정의한 인터페이스.

인터페이스 Method Override

  • public void contextInitialized(ServletContextEvent sce) : 웹어플리케이션을 초기화할 때 호출
  • public void contextDestroyed(ServletContextEvent sce) : 웹 어플리케이션을 종료할 때 호출.

규칙


  • 1개 이상의 태그를 등록할 수 있으며,
    태그는 반드시 한 개의 태그를 자식 태그로 가져야 한다.
  • 2개 이상의 listener가 종료될 때는 아래에서 위의 순서대로 종료한다.(즉, 스택구조이다.)
  • 2개의 listener를 등록할 수도 있는데 이때 실행 순서는 먼저 등록한 순서(위에서 아래로)이다.

사용방법


<!-- web.xml -->

<listener>
         <listener-class>jdbc.DoDBCPInitListener</listener-class>
</listener>
public class DoDBCPInitListener implements ServletContextListener{
          @Override
            public void contextInitialized(ServletContextEvent sce) {

            }

            @Override
            public void contextDestroyed(ServletContextEvent sce) {

            }
}
  • Servlet 3.0 버전 이상부터는 web.xml에 등록하지 않아도

    @WebListener 어노테이션으로 Listener 적용할 Class에 적용하면 자동으로 Listener 등록이 된다.

import javax.servlet.annotation.WebListener;

@WebListener
public class TestListener implements ServletContextListener {

}

'개발 > [Config]' 카테고리의 다른 글

[web.xml] org.apache.jasper.servlet.JspServlet  (0) 2021.05.14
[web.xml] context-param  (0) 2021.05.12
[Config] Web.xml  (0) 2021.05.12