[Spring] 주요 어노테이션(Annotation)
:: 주요 어노테이션 정리
- @Controller : @GetMapping, @PostMapping, @PutMapping, @DeleteMapping 등을 사용할 수 있게 해준다. (자원관리 REST API의 CRUD 느낌?)
- GetMapping : GET 요청을 처리 (주소 창에 경로를 연결)
- @ResponseBody : 메서드의 반환값을 응답 본문으로 사용
- @RestController : @Controller + @ResponseBody 두 개의 어노테이션의 기능을 합함
- @Component : 스프링 Ioc 컨테이너에 등록, new로 생성 할 필요가 없어진다.
- @Controller : Component의 일종
- @Service : @Component와 동일
- @Repository : @Component와 동일
- @Configuration : 클래스 레벨, @Bean을 사용할 수 있게 해준다.
- @Bean : 메서드 레벨, 스프링 IoC 컨테이너에 등록, new 로 생성할 필요가 없어진다.
- @RequireArgsConstructor : final이 붙은 생성자가 필요 한 객체를 자동으로 생성
- @RequestMapping : 보통 클래스 레벨에 부착, 접두어를 붙여줌
- ex. @RequestMapping("/exam")
- 보통 @GetMapping에서 중복되는 접두어가 있을 경우 사용
- @PathVariable
- 경로 변수를 표시하기 위해 메서드에 매개변수로 사용
- 경로 변수는 {id} 같은 중괄호를 나타낸다.
- ex) @GetMapping("/exam/{id}")
- ex) @PathVariable Long id;
- @RequestParam