Spring/기본 구성

2. Spring Boot 프로젝트 디렉토리 구성

초코chip 2024. 1. 18. 14:48

프로젝트 디렉토리 구성

main 디렉토리

  • 'src/main' 디렉토리: 프로젝트 실행에 필요한 코드를 관리하는 곳

 

main/java 디렉토리

애플리케이션 개발 코드를 관리하는 곳

 

main/resources 디렉토리

정적 파일들을 저장하는 곳

  • View 관련 파일을 관리
    • ex) templates(HTML), static(css, js, imgs)
  • application.yml 파일 관리 : 스프링 부트 설정 파일
    • DB 설정 정보, 로깅 설정 정보 ...

 

test 디렉토리

  • 'src/test' 디렉토리: 프로젝트 코드를 테스트하는 코드를 관리하는 곳

 

build.gradle

  • 빌드 프로세스에 필요한 설정을 관리하는 곳
    • 의존성 및 플러그인 같은 빌드 관련 정보가 포함

 

settings.gradle

  • 빌드할 프로젝트 정보 관리

 

 

애플리케이션 메인 클래스

src/main/java/<그룹_이름>.<프로젝트_이름>/<프로젝트_이름>Application.java 파일

  • 스프링 애플리케이션을 생성하여 실행하는 곳
  • 구성 : @SpringBootApplication + SpringApplication.run()
package me.jangwoojin.praticeSpringboot;

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

@SpringBootApplication
public class PraticeSpringbootApplication {
    public static void main(String[] args){
    	//메인 클래스로 사용할 클래스 + 커맨드 라인의 인수를 전달
        SpringApplication.run(PraticeSpringbootApplication.class, args);
    }
}

 

@SpringBootApplication

스프링 부트 사용에 필요한 기본 설정을 진행

 

@SpringBootConfiguration

스프링 부트 관련 설정을 나타내는 애너테이션

 

@ComponentScan

사용자가 등록한 빈을 읽고 등록하는 애너테이션

  • 이를 통해 '@Component' 애너테이션을 사용하는 클래스들을 찾아 빈으로 등록
    • +) 또한 '@Component를' 감싸는 다른 애너테이션도 찾아 빈으로 등록

 

@EnableAutoConfiguration

자동 구성을 활성화하는 애너테이션

  • 이를 통해 'spring.factories' 파일에 정의된 클래스들을 자동 설정하고 구성

'Spring > 기본 구성' 카테고리의 다른 글

6. ORM 개념 with. Spring Data JPA  (0) 2024.01.18
5. Service 클래스  (0) 2024.01.18
4. Controller 클래스 with. DTO  (0) 2024.01.18
3. Spring Boot 구조  (0) 2024.01.18
1. 프로젝트 생성방법 with. InteliJ  (0) 2024.01.18