작성한 질문수
스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
요청 매핑 - API 예시
작성
·
295
0
@Controller인 경우에는 반환형이 String이면 viewresolver가 반환값과 같은 화면을 찾아서 리턴해주신다고 하셨습니다.
@RestController인 경우에는 Http Body부분에 리턴값을 넣어서 주신다고 하셨습니다.
그렇다면 @RestController를 선언하면
@GetMapping()
public @ResponseBody String method() {
~~~~
}
위와 같이 @ResponseBody를 사용한 효과를 내는 건가요?
퀴즈
실제 서비스 개발에서 System.out.println 대신 로깅 라이브러리를 사용하는 주된 이유가 무엇일까요?
코드가 더 짧아져요.
성능이 훨씬 빨라요.
로그 레벨 설정으로 출력 레벨을 조절할 수 있어요.
다른 개발자가 보기에 더 멋있어요.
답변 1
1
안녕하세요. 김은재님, 공식 서포터즈 OMG입니다.
@RestController 어노테이션 코드를 보시면 @Controller 와 @ResponseBody가 적용 되어 있는 것을 보실 수 있으신데요, @RestController를 클래스 위에 선언할 경우 해당 클래스의 모든 메서드에 @ResponseBody가 적용되어 지는 반면,
클래스 위에 @Controller를 선언 후, 김은재님이 예시를 둔 것처럼 메서드에 @ResponseBody를 선언할 경우 해당 메서드(url 요청)만 적용됩니다.
감사합니다.