ResponseEntity

이재용·2025년 1월 1일
0

HttpEntity

HttpHeader + HttpBody
HttpEntity 클래스를 상속받아 구현한 RequestEntity, ResponseEntity

HTTP 요청에 대한 Status, Headers, Body를 제어하는데 사용하는 클래스이다.

사용 방법

ResponseEntity<T> responseEntity = new ResponseEntity<>(body, headers, status);

return new ResponseEntity<>(message, headers, HttpStatus.OK);



생성자 1
public static <T> ResponseEntity<T> ok(@Nullable T body) {
	return ok().body(body);
}

HTTP 200 Status Code
@GetMapping("/")
public ResponseEntity<User> getUser() { 
	User user = userService.getUser(); 
	return ResponseEntity.ok(user); 
}
타입을 여러 개 받고 싶다면 Return 타입은 Object 대신 와일드카드 사용
public ResponseEntity<?> getUsers() { 
	List<User> users = userService.getUsers(); 
	return ResponseEntity.ok(users); 
}



return ResponseEntity.ok(products); // 자동으로 status 200 반환
return ResponseEntity.created(location).body(createdUser); // 자동으로 status 201 반환
return ResponseEntity.noContent().build(); //HTTP 204 Status Code. 삭제 요청이나 업데이트 후 body가 필요 없는 경우에 사용된다.
return ResponseEntity.accepted().build(); //HTTP 202 Status Code. 처리가 아직 완료되지 않았지만 시작되었음을 클라이언트에 알릴 때 사용할 수 있다.
return ResponseEntity.notFound().build();
return ResponseEntity.badRequest().body("USer ID is required");
return ResponseEntity.status(HttpStatus.CREATED).body(savedBook);

0개의 댓글