티스토리 뷰

JPA

템플릿 엔진

yoooon1212 2024. 10. 4. 09:33
템플릿 엔진 (Template Engine)

정적 파일(예: HTML, XML 등)을 동적으로 변환할 수 있는 도구

 

서버에서 데이터를 받아서 동적인 콘텐츠를 생성하기 위해 템플릿 파일에 변수표현식을 삽입해 처리하는 역할

 

이를 통해 서버가 클라이언트에 동적 웹 페이지를 응답할 수 있게 됩니다.

 

역할

  • 동적 웹 페이지 생성: 서버에서 HTML 템플릿 파일을 가져와, 서버에서 처리된 데이터를 삽입하여 클라이언트에게 동적인 웹 페이지를 전송합니다.
  • 코드 재사용성: 여러 웹 페이지에서 동일한 구조나 디자인을 사용하는 경우, 템플릿 엔진을 사용하면 공통된 레이아웃을 쉽게 재사용할 수 있습니다.

 

템플릿 엔진의 종류

  • 서버사이드 템플릿 엔진(SSR): 서버에서 HTML을 렌더링하고, 데이터가 삽입된 HTML을 클라이언트에게 전송합니다. (Thymeleaf, JSP, Freemarker …)
  • 클라이언트사이드 템플릿 엔진(CSR): 클라이언트(브라우저)에서 데이터를 받아서 템플릿을 렌더링하여 동적인 페이지를 생성합니다.(React, Vue.js)

 

SSR(Server-Side Rendering, 서버사이드 렌더링) 동작 원리

[1] HTML 템플릿 작성
    ⬇
    - HTML 파일에 변수나 표현식을 포함해 작성합니다.
      예: <h1 th:text="${message}">기본 메시지</h1>
    
[2] 서버에서 데이터 처리
    ⬇
    - 서버에서 필요한 데이터를 준비합니다.
      예: message = "안녕하세요 !"

[3] 템플릿 엔진으로 변환
    ⬇
    - 서버에서 데이터와 HTML 템플릿을 결합하여 동적 HTML을 생성합니다.
      예: <h1>안녕하세요, 학생님!</h1>
      
[4] 클라이언트로 전송
    ⬇
    - 최종적으로 데이터가 삽입된 완성된 HTML 파일을 클라이언트에게 전송합니다.

 

'JPA' 카테고리의 다른 글

게시글 만들기 - 프로젝트 생성  (0) 2024.10.10
Mustache  (0) 2024.10.04
글 수정 API 만들기  (0) 2024.10.02
글 상세보기(조회) API 구현  (0) 2024.10.02
글 목록 조회 API 만들기  (0) 2024.10.02
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/04   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30
글 보관함