programing

스프링 부트를 사용하여 전쟁으로 웹 앱을 개발하는 경우 주요 방법이 필요한 이유는 무엇입니까?

itmemos 2023. 7. 1. 08:03
반응형

스프링 부트를 사용하여 전쟁으로 웹 앱을 개발하는 경우 주요 방법이 필요한 이유는 무엇입니까?

저는 Spring Boot을 이용하여 웹 앱을 개발하고 있습니다.일반적인 배포 환경은war그리고 그것을 배치합니다.webappsTomcat 디렉토리에 있는 폴더.

SpringBoot를 사용하여 확인했습니다. 필요할 것 같습니다.main방법.저는 이것이 왜 필요한지 궁금합니다.만약 그것을 피할 방법이 있다면, 그것은 무엇입니까?

@SpringBootApplication
public class Application extends SpringBootServletInitializer {

    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
        return application.sources(Application.class);
    }

    public static void main(String[] args) throws Exception {
        SpringApplication.run(Application.class, args);
    }

}

전쟁을 일으켜 Tomcat의 webapps 폴더에 배치하는 일반적인 배치 시나리오에는 주 방법이 필요하지 않습니다.필요한 것은 다음과 같습니다.

public class Application extends SpringBootServletInitializer {

    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
        return application.sources(Application.class);
    }
} 

그러나 IDE 내에서 앱을 실행할 수 있도록 하려면(예: Eclipse의 Run As -> Java Application) Spring Boot의 내장된 Tomcat으로 독립적으로 실행할 수 있는 실행 가능한 jar 또는 war를 개발하거나 구축해야 합니다.java -jar myapp.war명령, 주 메서드가 있는 진입점 클래스가 도움이 될 수 있습니다.

별도의 웹 컨테이너에서 실행하려면 다음과 같이 하십시오.

주요 방법은 필요 없습니다. 확장만 하면 됩니다.SpringBootServletInitializer크리거가 언급한 것처럼.

@SpringBootApplication
public class Application extends SpringBootServletInitializer {

    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
        return application.sources(Application.class);
    }
....
....

명령줄에서 독립 실행형 응용 프로그램으로 실행하려면 다음과 같이 하십시오.

여기서는 주요 방법이 필요합니다. 따라서 다음을 사용하여 실행할 수 있습니다.java -jar명령행에서.

public class Application {
    public static void main(String[] args){
        ConfigurableApplicationContext context = SpringApplication.run(Application.class, args);
    }
....
....

출처: https://spring.io/guides/gs/convert-jar-to-war/

Spring Boot에서는 기본적으로 세 가지가 필요합니다.

@SpringBootApplication 주석 사용

SpringBoot Servlet 확장이니셜라이저

위에 표시된 대로 구성 방법을 덮어씁니다.

그리고 그게 다야!

언급URL : https://stackoverflow.com/questions/29782148/why-do-i-need-main-method-if-i-develop-web-app-as-war-using-spring-boot

반응형