[ backend/프레임워크 ]
[spring] REST 구현 (@RestController를 사용하는 이유/ResponseEntity를 사용하는 이유/글로벌 예외 핸들러 정의하기)
2024-11-12 09:50:01
@Controller 대신 @RestController를 사용하는 이유웹 앱을 만드는 방식에는 크게 두 가지가 있다.백엔드가 완성된 뷰를 제공하는 앱프론트엔드-백엔드 분리 방식의 앱프론트엔드-백엔드 분리 방식의 경우, 백엔드는 원시 데이터만 제공한다. 따라서 스프링 MVC 다이어그램에서 뷰 리졸버가 더 이상 필요하지 않다. 스프링은 컨트롤러 클래스를 컨텍스트에 빈으로 등록하기 위해 `@Controller` 어노테이션을 사용한다. 하지만 HTTP 응답을 전달하기 위해서는 `@ResponseBody` 어노테이션이 필요하다. 이를 통해 컨트롤러가 뷰 이름이 아닌 HTTP 응답 데이터를 반환한다는 것을 디스패처 서블릿에게 알릴 수 있다.@RequestMapping("/member")@Controller // 컨..