RestController와 Controller

승환·2025년 1월 27일

📌 문제

스프링 부트에서 사용하는 어노테이션 중에 Controller단에서 사용하는 RestController와 Controller가 있다. 문제의 발생은 html 파일을 열어야 하는 Controller단에서 html파일을 어떻게 해도 불러올 수 없길래 찾아보게 되었다.


📌 Controller

간단하게 말하면 MVC 패턴에서 사용하는 View를 불러오는 방법 이라고 표현할 수 있을 것 같다.
Controller는 기본적으로 view를 띄우는 것에 활용하게 된다.
resource폴더에서 html파일을 띄워서 직접적으로 연결해서 활용하는 방법을 사용하게 되는데,
요즘은 벡엔드와 프론트엔드를 나눠서 json으로 데이터만 전달하는 방식을 활용하고 있기 때문에 view를 따로 연결하지 않는다는 이유로 잘 사용하지 않는다.

controller은 @controller @ResponseBody를 사용해서 페이지가 아니라 응답값을 그대로 반환하기 위해서 사용하게 된다.
json으로 데이터를 넘겨주기 위해 두가지 어노테이션을 사용해야한다.


📌 RestController

간단하게 Controller과 ResponseBody를 합친 것이라고 생각하면 된다.

벡엔드와 프론트엔드가 나눠서 작업을 하기 때문에 데이터만 주고받으면된다.
따라서 페이지를 띄우는 Controller방식을 사용할 필요가 없어졌기 때문에 RestConstroller방식을
사용하게 되었다.

다음 포스트에서는 Restcontroller을 어떻게 사용하는지 프론트엔드와 벡엔드 사이에서 구동하는 방식에 대해서 알아봐야겠다.

profile
왕초보 학부생

0개의 댓글