복붙노트

[SPRING] 봄철 시작 이벤트 후 Tomcat

SPRING

봄철 시작 이벤트 후 Tomcat

나는 바람둥이가 시작되고 모든 속성을 성공적으로로드 한 직후에 실행하고 싶은 함수가 있습니다. 나는 ServletContextListener를 사용하고 싶지 않습니다. 왜냐하면 Tomcat이 시작되기 전에이 함수가 시작되어야하기 때문입니다. 누군가이 문제를 어떻게 해결할 수 있을지 제안 할 수 있습니까?

해결법

  1. ==============================

    1.ServletContextListener.contextInitialized (..)는 모든 서블릿과 필터가 지정된 애플리케이션에 대해 초기화 된 후에 호출되는 메소드입니다.

    ServletContextListener.contextInitialized (..)는 모든 서블릿과 필터가 지정된 애플리케이션에 대해 초기화 된 후에 호출되는 메소드입니다.

    업데이트 공유하지 않았지만 설정을 맡을 예정입니다.

    이 경우 두 가지 옵션이 있습니다.

  2. ==============================

    2.시작 서블릿을 작성한 다음 web.xml의 끝에 추가 할 수 있습니다.

    시작 서블릿을 작성한 다음 web.xml의 끝에 추가 할 수 있습니다.

    <servlet>
            <servlet-name>StartupServlet</servlet-name>
            <servlet-class>com.your.package.MyStartupServlet</servlet-class>
            <load-on-startup>1</load-on-startup>
    </servlet>
    
    
    public class MyStartupServlet extends HttpServlet {
    
        public void init(ServletConfig config) throws ServletException {
            try {
                 //  Startup code here
            } catch (Exception e){
                // Log exception
            }
        }
    
        public java.lang.String getServletInfo() {
            return "StartupServlet";
        }
    }
    
  3. ==============================

    3.JMX Tomcat 지원은 컨테이너에 배치 된 ServletContextListener가 없어도 요구 사항을 충족 할 수 있다고 생각합니다.

    JMX Tomcat 지원은 컨테이너에 배치 된 ServletContextListener가 없어도 요구 사항을 충족 할 수 있다고 생각합니다.

  4. from https://stackoverflow.com/questions/4747525/tomcat-after-startup-event-with-spring by cc-by-sa and MIT license