개발자가 더욱 쉽게 코드를 작성할 수 있도록 돕습니다.
→ 스프링 부트에서 제공하는 어노테이션은 많은 기능을 적은 양의 코드로 구현할 수 있도록 돕습니다.
또한, XML 설정 없이 어노테이션 기반으로 스프링 컨테이너를 구성할 수 있습니다.
코드의 가독성을 높여주고 유지보수를 용이하게 합니다..
스프링 프레임워크의 기능을 쉽게 활용할 수 있습니다.
→ 스프링 부트 어노테이션을 사용하면 스프링 프레임워크의 다양한 기능을 쉽게 활용할 수 있습니다.
예를 들어 @Autowired 어노테이션을 사용하면 의존성 주입(Dependency Injection)을 쉽게 구현할 수 있습니다.
어노테이션을 이용한 메타데이터를 이용해 다양한 기능을 구현할 수 있습니다.
→ 어노테이션을 사용하면 메타데이터를 쉽게 정의할 수 있습니다.
메타데이터는 실행 컨텍스트에서 프로그램의 구성 요소들을 나타내는 정보를 의미합니다.
스프링 부트에서는 이러한 메타데이터를 이용해 만들어진 어노테이션들로 다양한 기능들을 구현할 수 있습니다. 예를 들어, @GetMapping, @PostMapping 등의 어노테이션을 이용해 RESTful API를 쉽게 구현할 수 있습니다.
| 어노테이션 | ||
| @SpringBootApplication | @RestController | @RequestMapping |
| 스프링 부트에서 어플리케이션을 시작할 때, 이 어노테이션이 있는 클래스를 기준으로 컴포넌트 스캔(Component Scan)을 시작합니다. | 컨트롤러 클래스에 사용되며, 해당 클래스를 RESTful 웹 서비스에서 사용할 수 있도록 해줍니다. | 요청 URI와 해당 요청을 처리하는 메서드를 매핑합니다. |
| @GetMapping, @PostMapping, @PutMapping, @PatchMapping, @DeleteMapping | @PathVariable | @RequestBody |
| HTTP 메서드(GET, POST, PUT, PATCH, DELETE)와 요청 URI를 매핑합니다. | URI의 일부를 매개 변수로 가져와서 메서드에 전달할 수 있도록 해줍니다. | HTTP 요청 본문을 객체로 변환합니다. |
| @RequestParam | @Autowired | @Configuration |
| HTTP 요청에서 매개 변수를 추출합니다. | 스프링 프레임워크에서 객체를 자동으로 주입하는 데 사용됩니다. | 스프링의 설정 파일임을 나타내는 클래스에 사용됩니다. |
| @Bean | @Service | @Repository |
| IoC(Inversion of Control) 컨테이너에서 객체를 생성하고 구성합니다. | 서비스 레이어(Service Layer)에 사용되며, 해당 클래스가 비즈니스 로직을 처리하는 서비스 클래스임을 나타냅니다. | 데이터 액세스 레이어(Data Access Layer)에 사용되며, 해당 클래스가 데이터 액세스 로직을 처리하는 레파지토리 클래스임을 나타냅니다. |
| @Component | @Scope | |
| 스프링 IoC 컨테이너에서 빈(Bean)으로 등록되는 클래스임을 나타냅니다. | 빈(Bean)의 범위(Scope)를 설정합니다. | |
'2023 > SPRING BOOT' 카테고리의 다른 글
| [spring boot] 스크립트 (0) | 2023.09.01 |
|---|---|
| [spring boot] 템플릿 엔진 : 타임리프(Thymeleaf) (0) | 2023.08.23 |
| [SPRING BOOT] tool_링크 (0) | 2023.08.17 |
| [Spring Boot] 기본(매핑) (0) | 2023.08.16 |
| [Spring Boot] 자바 템플릿 엔진 & Spring MVC (0) | 2023.08.16 |