Spring Boot

Spring REST Controllers

@RestController, @GetMapping, @PostMapping, @PutMapping, @DeleteMapping, ResponseEntity를 사용하는 REST API

20 면접 질문·
Mid-Level
1

@RestController와 @Controller의 주요 차이점은 무엇입니까?

답변

@RestController는 @Controller와 @ResponseBody를 결합한 복합 어노테이션입니다. 즉, @RestController의 모든 메서드는 뷰를 해석하는 대신 직렬화된 데이터(JSON/XML)를 자동으로 반환합니다. @RestController는 REST API를 만드는 데 이상적이며, @Controller는 HTML 뷰를 사용하는 전통적인 웹 애플리케이션에 사용됩니다.

2

REST 메서드에서 @RequestBody 어노테이션의 역할은 무엇입니까?

답변

@RequestBody는 HTTP 요청 본문(보통 JSON 또는 XML)을 Java 객체로 역직렬화하도록 Spring에 지시합니다. Spring은 HttpMessageConverter(JSON의 경우 Jackson 등)를 사용하여 이 변환을 자동으로 수행합니다. 이는 POST나 PUT 요청에서 복잡한 데이터를 받는 데 필수적입니다.

3

HTTP DELETE 요청을 매핑하려면 어떤 어노테이션을 사용해야 합니까?

답변

@DeleteMapping은 HTTP DELETE 요청을 간결하게 매핑하기 위해 Spring 4.3에서 도입된 전용 어노테이션입니다. @RequestMapping(method = RequestMethod.DELETE)의 단축 표현입니다. Spring은 각 HTTP 메서드에 대해 유사한 어노테이션을 제공합니다: @GetMapping, @PostMapping, @PutMapping, @PatchMapping.

4

Spring REST에서 URL의 경로 변수를 어떻게 추출합니까?

5

객체를 직접 반환하는 대신 ResponseEntity<T>를 사용하는 이점은 무엇입니까?

+17 면접 질문

다음 면접을 위해 Spring Boot을 마스터하세요

모든 질문, flashcards, 기술 테스트, 코드 리뷰 연습, 면접 시뮬레이터에 접근하세요.

무료로 시작하기