본문 바로가기
Backend

SpringBoot 초기 셋팅 시 중요한 어노테이션

by Dddu 2024. 12. 8.

SpringBoot 초기 셋팅 시 중요한 어노테이션 

1. @SpringBootApplication

  • 설명: Spring Boot 애플리케이션의 시작점을 정의하고, 자동 설정 및 컴포넌트 스캔을 포함한다.
  • 예시:
    @SpringBootApplication
    public class MyApplication {
        public static void main(String[] args) {
            SpringApplication.run(MyApplication.class, args);
        }
    }
    

2. @ComponentScan (자동 포함)

  • 설명: 애플리케이션에서 관리되는 빈들을 자동으로 탐지하고 등록한다. (@SpringBootApplication에 자동 포함됨)
  • 예시: 별도의 @ComponentScan 어노테이션을 사용할 필요 없이, @SpringBootApplication이 위치한 패키지와 하위 패키지의 빈을 자동으로 스캔한다.

3. @EnableAutoConfiguration (자동 포함)

  • 설명: Spring Boot의 자동 설정 기능을 활성화한다. (@SpringBootApplication에 자동 포함됨)
  • 예시: 별도로 명시할 필요 없이, Spring Boot가 애플리케이션 클래스패스를 분석하고 필요한 기본 설정을 자동으로 적용한다.

4. 기타 주요 어노테이션

  • @RestController: REST API 컨트롤러를 정의할 때 사용한다.
    • 예시:
      @RestController
      public class MyRestController {
          @GetMapping("/api/hello")
          public String sayHello() {
              return "Hello, World!";
          }
      }
      
  • @RequestMapping: HTTP 요청을 메서드에 매핑할 때 사용한다.
    • 예시:
      @RequestMapping("/home")
      public String home() {
          return "home";
      }
      
  • @Entity: JPA 엔티티 클래스를 정의할 때 사용한다.
    • 예시:
      @Entity
      public class User {
          @Id
          private Long id;
          private String name;
      }
      

 요약하자면

@SpringBootApplication은 Spring Boot 애플리케이션의 시작점으로 자동 설정과 컴포넌트 스캔을 포함하고, @ComponentScan과 @EnableAutoConfiguration은 이를 통해 자동으로 활성화된다. 그 외 @RestController, @RequestMapping, @Entity 등은 REST API나 데이터베이스 연동을 위한 추가 어노테이션이다. @SpringBootApplication이 가장 기본적이고 필수적인 어노테이션이다.

'Backend' 카테고리의 다른 글

[Java] 예외처리구분  (1) 2024.12.22
[JAVA]Enum에 대하여  (1) 2024.12.22
Spring boot cors 설정시 주의점  (0) 2024.12.08
Spring Local Cache  (1) 2024.11.03
대기열 프로세스(2) - Redis  (0) 2024.10.27