기본 기능 구성이 끝나고 주소 매핑이 잘 됐는지 확인을 해봤는데 의외의 결과가 나왔다.
html 상에 Posts 버튼을 누르면 페이지 이동과 함께 DB에 연결된 게시글을 보여줘야하는데, 실제 보여준 창은 html 파일의 text 뿐이었다.
에러 메세지라도 떴으면 어디서 문제가 있는 지 바로 알았을텐데 그것조차 없어서 당황했다.
알고보니 컨트롤러 클래스의 애너테이션을 @RestController로 설정한 것이 문제였다.
@Controller는 뷰를 전달해주는 데에 반해, @RestController는 데이터를 전달한다.
그러니 템플릿에서 html 파일을 찾는 것이 아니라 string 자체를 보여줬던 것이다.
직접 해보니 눈으로 이론만 봤을 때와 달리 이해가 빠르게 됐다.
정확하진 않지만 view를 렌더링할 때는 반환형을 string, 데이터를 반환할 때는 ResponseEntity를 이용하는 것도 알았다.