지정된 템플릿 양식과 데이터가합쳐져 HTML 문서 출력하는 소프트웨어
- JSP, Freearker, React, Vue 등
- 서버 템플릿 엔진
- 서버에서 java 코드로 문자열 만든 후 HTML로 변환해 브라우저로 전달함
- HTML 코드에서 고정적으로 사용되는 부분을 템플릿으로 만들어둠
동적으로 생성되는 부분만 특정 장소에 끼워넣는 방식으로 동작함 - Freemarker, Thymeleaf, Mustache, JSP 등
- 클라이언트 템플릿 엔진
- 브라우저에서 화면 생성함 (서버에서 이미 코드가 벗어난 경우)
- HTML 형태로 코드 작성 가능, 동적으로 DOM 그리게 해줌
- 렌더링 끝난 후 서버 통신 없이 화면 변경 필요할 때 사용 가능함
- 공통 템플릿 만든 후 서버에서 받아온 데이터를 템플릿 적절한 위치에 replace, DOM 객체에 동적으로 그려줌
- react, Vue.js(이 둘은 서버 사이드 렌더링 지원함), Mustache, Squirrelly, Handlebars
단일 화면에서 화면 변경할 경우 클라이언트 사이드 템플릿 엔진 사용
페이지 이동해야 한다면 서버 사이드 템플릿 엔진 사용