ResponseEntity<T> 개념 정리

LeeYulhee·2023년 8월 29일
0

👉 ResponseEntity란?


  • 스프링 프레임워크의 웹 모듈에 포함되어 있는 클래스
  • HTTP 응답을 표현하며, HTTP 상태 코드, 헤더 및 본문을 포함할 수 있음
  • ResponseEntity는 제네릭 타입을 가지며, 는 응답 본문의 타입을 나타냄
    • 응답 본문의 콘텐츠 유형에 따라 유연하게 HTTP 응답을 구성할 수 있음



👉 장점


  • 정밀한 HTTP 상태 코드 제어
    • 원하는 HTTP 상태 코드를 명시적으로 설정할 수 있음
  • HTTP 헤더 설정
    • 응답 헤더를 쉽게 추가하거나 수정할 수 있음
  • 유연한 응답 본문 설정
    • 원하는 타입의 응답 본문을 설정할 수 있음



👉 예시


@RestController
public class MyController {

    @GetMapping("/greet")
    public ResponseEntity<String> greet() {
        HttpHeaders headers = new HttpHeaders();
        headers.add("Custom-Header", "This is a custom header");

        return ResponseEntity.ok()               // HTTP 200 상태 코드 설정
                             .headers(headers)  // 헤더 추가
                             .body("Hello, World!");  // 응답 본문 설정
    }
}
  • ResponseEntity.ok()는 HTTP 200 상태 코드로 ResponseEntity를 생성하는 빌더를 반환
  • 이후에 헤더와 본문을 추가하여 최종적인 ResponseEntity 객체를 반환
profile
공부 중인 신입 백엔드 개발자입니다

0개의 댓글