>  기사  >  Java  >  Spring Boot 기본 클래스 및 디렉터리 구조에 대한 간략한 소개(예제 포함)

Spring Boot 기본 클래스 및 디렉터리 구조에 대한 간략한 소개(예제 포함)

不言
不言원래의
2018-09-27 16:44:173392검색

이 글은 Spring Boot의 메인 클래스와 디렉토리 구조에 대한 간략한 소개를 담고 있습니다. 참고할만한 내용이 있으니 참고하시면 좋을 것 같습니다.

Spring Boot와 기존 프로젝트의 가장 큰 차이점은 기존 프로젝트는 WAR 패키지로 패키징되어 서버에 배포되므로 추가 서블릿 컨테이너가 필요한 반면, Spring Boot는 jar 패키지로 직접 패키징하여 빌드할 수 있다는 점입니다. 서블릿 컨테이너는 통합되어 있으며 독립적인 서블릿 컨테이너 없이도 java -jar xx.jar 명령을 통해 직접 실행할 수 있습니다.

실행 가능한 jar 패키지로 만든 후 META-INF/MANIFEST.MF 파일을 살펴보겠습니다.

Manifest-Version: 1.0
Archiver-Version: Plexus Archiver
Built-By: admin
Start-Class: cn.javastack.MyApplication
Spring-Boot-Classes: BOOT-INF/classes/
Spring-Boot-Lib: BOOT-INF/lib/
Spring-Boot-Version: 2.0.4.RELEASE
Created-By: Apache Maven 3.5.0
Build-Jdk: 1.8.0_151
Main-Class: org.springframework.boot.loader.JarLauncher

이 jar 패키지의 항목 클래스인 Start-Class가 있습니다. 이 항목 클래스는 프로젝트의 최상위 패키지에 배치하고 다른 모든 클래스는 배치하는 것이 좋습니다. 하위 패키지 아래의 디렉터리 구조는 다음과 같습니다.

cn
 +- javastack
     +- MyApplication.java
     |
     +- customer
     |   +- Customer.java
     |   +- CustomerController.java
     |   +- CustomerService.java
     |   +- CustomerRepository.java
     |
     +- order
         +- Order.java
         +- OrderController.java
         +- OrderService.java
         +- OrderRepository.java

이 디렉터리 구조는 주류이자 권장되는 접근 방식이며 @SpringBootApplication 주석이 기본 항목 클래스에 추가되어 자동 구성, 구성 요소 검색 등과 같은 Spring Boot의 다양한 기능을 활성화합니다.

package cn.javastack.MyApplication;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class MyApplication {

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

}

이 작업을 원하지 않는 경우 @EnableAutoConfiguration 및 @ComponentScan 주석을 최대한 활용하여 동작을 맞춤 설정할 수도 있지만 이는 권장되는 접근 방식은 아닙니다.

위 내용은 Spring Boot 기본 클래스 및 디렉터리 구조에 대한 간략한 소개(예제 포함)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.