본문 바로가기
Spring

Spring Annotation 3. @ResponseBody

by Status Code 2023. 4. 19.

스프링에서 @ResponseBody 사용법 및 예제
@ResponseBody는 스프링(Spring) 프레임워크에서 사용되는 어노테이션으로, 메서드가 반환하는 값을 HTTP 응답 본문(Response Body)에 작성하도록 합니다. 이 어노테이션을 사용하면 반환 값을 뷰로 전달하는 대신 클라이언트에게 직접 데이터를 보낼 수 있습니다. 주로 JSON, XML 등의 형태로 데이터를 전달할 때 사용합니다.

예제
1. Controller 클래스 생성

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class ResponseBodyExampleController {

    @GetMapping("/hello")
    @ResponseBody
    public String hello() {
        return "안녕하세요!";
    }

}

위의 예제에서 @ResponseBody 어노테이션이 hello() 메서드에 적용되어 있습니다. 

이 경우 메서드가 반환하는 문자열 "안녕하세요!"가

 HTTP 응답 본문에 작성되어 클라이언트에게 전달됩니다. 클라이언트가 다음과 같이 요청하면:

GET /hello

응답은 다음과 같이 나타납니다:

안녕하세요!

주의할 점은, @RestController 어노테이션을 사용하는 경우, @ResponseBody가 기본적으로 포함되어 있어 별도로 사용할 필요가 없습니다. 그러나 @Controller를 사용하는 경우엔 명시적으로 @ResponseBody를 사용해야 합니다.

이처럼 @ResponseBody를 사용하면 메서드가 반환하는 값을 직접 클라이언트에게 전달할 수 있습니다. 주로 JSON, XML 등의 형태로 데이터를 클라이언트에 전달할 때 유용하게 사용할 수 있습니다.

'Spring' 카테고리의 다른 글

Spring Annotation 6. @Autowired  (0) 2023.04.19
Spring Annotation 5. @RequestParam  (0) 2023.04.19
Spring Annotation 4. @PathVariable  (0) 2023.04.19
Spring Annotation 2. @RequestMapping  (0) 2023.04.19
Spring Annotation 1. @Controller  (0) 2023.04.19

댓글