ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 스프링 Annotation 알아보기
    Spring 2021. 2. 14. 18:56

    @RestController: @RestController는 @Contorller 어노테이션과 @ResposeBody 어노테이션을 합쳐놓은 어노테이션이다. @Controller는 일반적으로  View Page의 이름을 리턴해주어 사용자에게 View Page를 출력하게 하는데 @RestController는 return 값이 View Page를 통해 출력되는 것이 아니라 HTTP ResponseBody에 직접 쓰이게 된다. 따라서 사용자의 요청이 오면 MessageConverter를 통해서 Json방식이나 Text 형태로 return 하게 된다.

    결론적으로 Spring MVC 패턴을 사용하면 @Controller를 사용하고 REST API 형태로 개발하게 되면 @RestController를 사용하게 된다.

     

    @RequestMapping:  Spring 웹 애플리케이션에서 가장 자주 사용되는 어노테이션 중 하나이다. http request로 들어오는 url을 특정 controller 클래스나 메서드로 연결시키는 역할을 한다.

     

    @GetMapping: @RequestMapping과 다르게 메서드에만 적용이 가능하다. HTTP GET 요청을 특정 메서드에 맵핑하기 위한 어노테이션이다.

     

    @Component: 직접 작성한 Class를 Bean으로 등록하기 위한 어노테이션이다. @Component 어노테이션이 있으면 ComponentScan의 대상이 된다.

     

    @Service: @Component랑 비슷한데 Service 클래스를 컨테이너에 Bean 객체로 생성해주는 어노테이션이다. @Service 어노테이션 안에 @Component가 포함되어 있어 ComponentScan의 대상이 된다.

     

    @Configuration: 스프링 IOC Container에게 해당 클래스를 Bean 구성 클래스임을 알려주는 것이다.

     

    @SpringBootApplication: 이 어노테이션은 세 가지 특징을 제공해준다.

    -@EnableAutoConfiguration: Spring Boot의 자동화 기능(Spring 설정)을 활성화시켜준다.

    -@ComponentScan: 패키지 내 application 컴포넌트가 어디에 위치에 있는지 검사한다. (Bean 객체 검색)

    -@Configuration: Bean에 대해서 Context에 추가하거나 특정 클래스를 참조해올 수 있다.

    'Spring' 카테고리의 다른 글

    스프링 웹 MVC 3일차  (0) 2021.03.13
    스프링 웹 MVC 2일차  (0) 2021.03.11
    스프링 웹 MVC 1일차  (0) 2021.03.09
    스프링 시큐리티 흐름 (1)  (0) 2021.03.04
    Spring boot 로 메일 보내기  (0) 2021.03.04

    댓글

Designed by Tistory.