본문 바로가기
Spring/MVC

HttpEntity

by o3oppp 2024. 7. 21.
HttpEntity
public class HttpEntity<T> {
	private final HttpHeaders headers;
    
        @Nulladble
        private final T body;
}
  • HTTP 요청 또는 응답에 해당하는 HttpHeader와 HttpBody를 포함하는 Class
  • HTTP 메시지를 편하게 조회 가능
  • 해당 Class를 상속받은 RequestEntity, ResponseEntity가 대표적

ResponseEntity
  • Spring MVC에서 HTTP  요청에 대한 응답을 제어하는데 사용하는 Class
  • HttpEntity를 상속받고 사용자의 HttpRequest에 대한 응답 데이터가 포함된 Class이기 때문에 HttpStatus, HttpHeader, HttpBody를 포함
  • Response Body, Header, Status Code를 포함할 수 있어 세밀한 응답 관리 가능
  • JSON 또는 XML과 같은 Restful 서비스를 제공하는데 이상적
    • HttpMessageConverter를 통해 JSON으로 응답 가능

사용 예시

ResponseEntity<T> response = new ResponseEntity<>(body, headers, status);
  • T : ResponseBody의 타입
  • body : ResponseBody 객체
  • headers : 설정할 HTTP Header
  • status : 상태 코드

ResponseEntity Method
  1. ok()
    •    HTTP 200 Status Code와 함께 Response를 생성
    •    가장 일반적으로 사용
  2. status()
    •    HTTP Status Code를 직접 설정
  3. created()
    •    HTTP 201 Status Code와 함께 Response를 생성
    •    새로운 resource 생성 시 주로 사용
  4. notFound()
    •    HTTP 404 Status Code와 함께 Response를 생성
  5. badRequest()
    •    HTTP 400 Status Code와 함께 Response를 생성
  6. noContent()
    •    HTTP 204Status Code와 함께 Response를 생성
    •    삭제 요청이나 업데이트 후 body가 필요 없는 경우에 주로 사용
  7. accepted()
    •    HTTP 202 Status Code와 함께 Response를 생성

'Spring > MVC' 카테고리의 다른 글

스프링 API 예외 처리  (0) 2024.07.21
API 예외 처리  (0) 2024.07.21
서블릿 예외 처리  (0) 2024.07.20
스프링 인터셉터  (0) 2024.07.11
서블릿 필터  (0) 2024.07.11