백엔드가 알아야 할 4가지
요청이 온다. → “hello.html 주세요” 요청이 오면 웹 서버에서 그냥 폴더에 있는 이미 생성된 파일을 제공을 한다.
만약, “주문 내역 보여 주세요” 요청이 오면, WAS 가
디비에서 주문 정보를 조회 한 다음에 이걸 동적으로 HTML 생성을 해낸다.
JSP, 타임리프 등등을 ‘뷰 탬플릿’ 이라고 부른다.
그리고 동적으로 생성이 된 것을 웹 브라우저로 내려 주는 것이다.
“주문 내역 보여 주세요”
요청이 오면, 디비에서 주문 정보를 조회 해서 JSON 형식의 데이터
{”주문번호”: 100, “금액”:5000} 라는 정보를 웹 브라우저 한테 내려 주는 것이다.
하지만 웹 브라우저는 HTML을 해석해야 되는데 JSON은 해석하지 못하고,
JSON으로 할 시 그냥 {”주문번호”: 100, “금액”:5000} 이런 모양으로 나온다.
예를 들면, 웹 브라우저에서 “주문 내역 주세요” 요청이 온다.
그러면 서버는 주문 디비를 조회 해서, HTML을 동적으로 생성한 다음에 (=JSP나 타임리프 같은걸로)
최종적으로 HTML을 서버에서 전부 만드는 것이다.
즉, HTML 만드는 과정을 서버에서 다 끝내고, 웹 브라우저는 단순하게 생성된걸 보여주기만 하면 되는 것이다.
("최종 결과물이 서버에서 전부 생성된다" 하여, 서버사이드 렌더링이라고 부른다.)
Reference
스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술