[스프링부트 blogV1] 9. 글 목록 보기 - 뷰 렌더링

silver's avatar
Dec 30, 2024
[스프링부트 blogV1] 9. 글 목록 보기 - 뷰 렌더링
 

Controller

: Repository에서 받아온 data를 models에 담는다.
notion image
 

Service

notion image
 

list.mustache

: controller에서 models에 담은 data를 꺼내 사용한다.
notion image
 
💡
Mustache문법
  1. 변수 {{ 변수명 }}
  1. 조건문 {{#조건}} {{/조건}} → true이면 출력
  1. 반복문 {{#배열}} {{/배열}}

MVC 패턴과 Spring의 ViewResolver

MVC (Model-View-Controller) 패턴은 애플리케이션을 세 가지 주요 구성 요소로 분리하여 개발하는 디자인 패턴이다.이 패턴에서 View는 Controller를 통해서만 접근 가능하며, 사용자의 요청을 처리한 후 결과를 표시하는 역할을 한다.
  1. View와 Controller Controller는 사용자의 요청을 받아 처리하고, 적절한 View를 반환한다. Spring에서는 ViewResolver를 사용하여 View를 찾고 렌더링하는 과정을 관리한다.
  1. ViewResolver의 작동 방식 프리픽스(prefix)와 서픽스(suffix): Controller가 실행되면 Spring의 ViewResolver는 설정된 프리픽스를 View의 경로 앞에 붙이고, 서픽스를 View의 파일 확장자 뒤에 붙인다.
  1. RestController와 ViewResolver RestController는 JSON 형식의 데이터를 반환하는 데 사용된다. 이 경우, ViewResolver는 작동하지 않습니다. 대신, Spring은 요청에 대한 JSON 응답을 직접 생성한다. RestController는 RESTful 웹 서비스를 구축할 때 유용하며, 클라이언트와의 데이터 교환을 위해 JSON 형식을 선호한다.
 

* 한글 깨짐 문제 해결

애플리케이션에서 한글이 깨지는 경우, application.properties 파일에서 UTF-8 인코딩을 설정해야 한다.
notion image
 
 
Share article

silver