html을 "동적"으로 변형해서 웹브라우저에 반환하는 방법(프로그래밍 O)
MVC: Model, View, Controller
각 카테고리는 자신의 기능에만 충실해야한다(하는게 베스트다)
우선적으로 controller 에서 해당 url 에 매칭되고, 해당 url 에 설정된 메서드가 실행됨
메서드에서 모델을 생성해 값을 넣은 다음, 모델을 return viewName 하는 할때 같이 넘겨준다.
넘겨주면 뷰 리졸버(viewResolver)가 화면을 찾아서 처리하는데, html찾을때 먼저 resources 폴더의 해당 이름의 html파일을 찾아서 처리한다.
=> 'resources:templates/' + {viewName} + '.html'
만약 controller 에서 매핑되지 않는 주소인 경우 static 폴더에서 찾아서 해결한다.
html 파일에서는 모델을 넘겨받아 ${}
와 key 값을 이용해 value 에 접근하여 value를 이용해 html 을 동적으로 변형(템플릿 엔진의 기능)해 웹브라우저에 반환. 템플릿 엔진의 예) thymleaf
html 파일 그냥 그대로(정적) 웹브라우저에 반환(프로그래밍 X)
json
이라는 데이터 구조 포맷으로 클라이언트에게 전달
=> 데이터만 내려주고 클라이언트가 알아서 화면을 구성함