Spring Boot:어노테이션 해석

aiden·2023년 11월 21일
0

Backend

목록 보기
1/17
  • @Controller : 이 아래 클래스는 컨트롤러이다.

  • @GetMapping("/") : 이 아래 함수는 @GetMapping 속 경로를 입력했을 때 매핑되는 내용이다.

  • @ResponseBody : 이게 있으면 아래 함수의 body를 그대로 응답으로 전달함. 그래서 리턴되는 내용이 페이지에 나오게 됨. 없으면 에러 페이지만 나옴

  • @Component : @Component를 붙이면 클래스가 스프링 컨테이너에서 관리하는 빈(Bean)이 된다. 한 번만 생성되어 사용된다. component를 구체적인 역할로 나눈 것이 @Controller, @Service, @Repository으로 모두 @Component에 포함된다.

  • @Autowired : 필드에 붙이면 필드 주입, 생성자에 붙이면 생성자 주입. 생성자 주입 시 new로 생성하지 않고도 자동으로 @Component가 연결됨.
    이 때, 생성자가 하나인 경우 @Autowired는 생략 가능

  • @Configuration : component 붙이기 애매할 때 configuration 만들고 bean. 이 때, 리턴 타입은 변수 타입과, 함수 이름은 변수명과 동일해야 한다.

    @Repository
    @RequiredArgsConstructor
    public class ArticleRepository {
        private final List<Article> articles;
    }
    
    @Configuration
    public class AppConfig {
        @Bean
        List<Article> articles(){
            return new LinkedList<>();
        }
    }
  • @Bean

profile
파인애플 좋아하세요?

0개의 댓글