브라우저(크롬) 주소 창에 url 을 입력합니다.
그럼 컨트롤러(C)에서 디비 데이터 가져와 모델(M)에 넣은 후,
뷰(타임리프, JSP/JSTL) 에서 모델에 담긴 데이터를 출력 하잖아요.
그럼 스프링은 이걸 HTML 문서로 만들어 반환합니다.
크롬은 HTML 문서를 받았으니 화면에 출력을 하겠죠.
글쓴님이 지금까지 한 게 이 부분입니다.
이걸 Spring MVC 라 하고, 서버에서 HTML 문서를 만들었니 SSR 이라 합니다.
그런데, 이런 방식 말고 다르게 할 수도 있습니다.
자바 스크립트로 데이터(json) 만 요청을 합니다. fetch, axios, ajax 이런 걸 쓰는거죠.
그럼 컨트롤은 디비 데이터를 가져와 json 문서로 만들어 반환합니다. 모델, 뷰 가 필요 없는거죠.
클라이언트는 데이타를 반환 받아 조합해서 html 문서를 만듭니다.
클라이언트에서 html 문서를 만들었으니 CSR 이라 합니다.
이 과정을 프레임웍으로 만들어 둔게 react, vue 이런게 되는거죠.
차이점이 좀 구분 되는지 모르겠습니다. 그니까, react 와 타임리프를 같이 쓸 일이 없는거죠.
열심히 하세요. :)