스프링 웹 MVC-25.@ResponseBody & ResponseEntity 및 정리(핸들러 메소드)
핸들러 메소드 16부: @ResponseBody & ResponseEntity
@ResponseBody
- 데이터를 HttpMessageConverter를 사용해 응답 본문 메시지로 보낼 때 사용한다.
- @RestController 사용시 자동으로 모든 핸들러 메소드에 적용 된다.
ResponseEntity
- 응답 헤더 상태 코드 본문을 직접 다루고 싶은 경우에 사용한다.
참고
- https://docs.spring.io/spring/docs/current/spring-framework-reference/web.html#mvc-ann-responsebody
- https://docs.spring.io/spring/docs/current/spring-framework-reference/web.html#mvc-ann-responseentity
@PostMapping
public ResponseEntity<Event> createEvent(@RequestBody @Valid Event event, BindingResult bindingResult){
// save event
if(bindingResult.hasErrors()){
return ResponseEntity.badRequest().build();
}
return new ResponseEntity<Event>(event, HttpStatus.CREATED);
// return ResponseEntity.ok().body(event);
}
핸들러 메소드 17부: 정리
다루지 못한 내용 @JsonView: https://www.youtube.com/watch?v=5QyXswB_Usg&t=188s 참고 PushBuidler: HTTP/2, 스프링 5
과제 프로젝트 코드 분석 https://github.com/spring-projects/spring-petclinic 컨트롤러 코드 위주