@PostMapping
@ResponseBody
public ResponseEntity<Posts> save(@RequestBody PostRequestDto dto) {
return new ResponseEntity<>(postService.save(dto), HttpStatus.CREATED);
}
이 Controller 메소드에서 반환을 ReponseEntity<>가 아닌 ResponseEntity로 하였더니, save 메소드의 반환값이 컨트롤러 테스트에서 저장되지 않았다.
ResponseEntity는 제너릭 타입을 가지는 클래스로, ResponseEntity<Posts>는 Posts 객체를 감싸고 있는 ResponseEntity 객체를 생성한다. 반면에 ResponseEntity는 어떠한 클래스도 감싸고 있지 않은 원시타입이기 때문에, 응답 상태코드만 반환한다.
배운 것
이 Controller 메소드에서 반환을
ReponseEntity<>
가 아닌ResponseEntity
로 하였더니, save 메소드의 반환값이 컨트롤러 테스트에서 저장되지 않았다.ResponseEntity
는 제너릭 타입을 가지는 클래스로,ResponseEntity<Posts>
는Posts
객체를 감싸고 있는 ResponseEntity 객체를 생성한다. 반면에ResponseEntity
는 어떠한 클래스도 감싸고 있지 않은 원시타입이기 때문에, 응답 상태코드만 반환한다.