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 |