카테고리 없음
<Spring boot>@Controller, @RestController
DevilFront
2020. 7. 29. 19:47
반응형
간단하게 내가 이해한 식으로 정리를 해보자면
@Controller : 페이지를 반환
@RestController : 데이터를 반환
물론 일반 Controller 에서도 데이터를 조작하긴 하지만 결국엔 조작한 데이터를 model 에 담아서 페이지를 반환해주는 반면 @RestController 에서는 필요한 데이터`만` 반환해준다.
실제 내 프로젝트에 적용된 사례를 보고 예를 들어보겠다.
위 사진은 'detail' 로 매핑을 해주고 tiles에 camp.detail 이름을 넘겨줘서 해당하는 페이지를 불러오는 곳의 코드다.
(tiles 라이브러리를 쓰지 않고 있다면 직접 그 페이지를 불러주면 되곘다!)
**결국 return 해주는 것이 tiles라이브러리를 통해 페이지를 불러와주기 위한 이름을 전달하고 있다.**
위의 사진들을 보면 return 으로 넘겨주는 값이 내가 필요한 데이터가 담긴 Map 컬렉션을 반환해주고 있는 것을 볼 수가 있다.
** 페이지를 요청하는 것이 아닌 '데이터'를 반환**
간단정리!
@Controller : 페이지를 호출
@RestController : 데이터를 반환
나의 경우에는 주로 싱글페이지로 (페이지리로딩 없이) 데이터를 바꿔주고 싶을 때 많이 사용하고 있다.
반응형