[Spring] thymeleaf 템플릿 엔진 사용 예시 (feat. @Controller, @Getmapping, Model, viewResolver)
이전에 static폴더에서 welcome page를 작성해봤다.
이번엔 templates 폴더에서 thymeleaf를 이용해서 view처리를 해보자.
(아직 개념이 부족해서 설명이 적절하지 않거나, 부정확 할 수 있다.)
http://localhost:8080/hello 경로 진입시 페이지 처리 과정
1. http://localhost:8080 경로 진입시 welcome page 노출
2. http://localhost:8080/hello 경로 진입시 /hello 가 처리된 결과물이 노출되어야함.
3. @Controller 어노테이션을 가진 클래스를 찾는다. >>> ㅁ (빨간 박스)
4. 해당 클래스 안에서 @Getmapping 어노테이션에서 요청이 "hello"인 메서드를 찾는다. >>> ㅁ (빨간 박스) 안의 파란밑줄
5. 4번을 성공적으로 수행했다면, 해당 메서드를 수행한다. >>> ㅁ (빨간 박스) 안의 ㅁ (보라 박스)
--> return 값을 반환한다. 반환한 값이 문자열이면, viewResolver가 반환값과 일치하는 파일을 찾는다. >>> ㅁ (빨간 박스) 안의 ㅁ (노란 박스)
--> resources 폴더 > templates 폴더 > 리턴값과 동일한 파일을 찾음 >>> ㅁ (빨간 박스) 안의 ㅁ (노란 박스)
6. 일치하는 파일을 viewResolver가 view 처리한다.
--> 해당 파일에서는 5번에서 처리된 데이터를 사용할 수 있다. >>> ㅁ (보라 박스)
--> 예시 : {data}, " ${data} "...
1 ~ 6번의 일련의 동자 과정 그림
(출처 : 인프런 김영한 강사님의 "스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술" )
(문제시 삭제 처리하겠습니다)
[Spring] gradle build 그래들 빌드하기 (0) | 2024.02.27 |
---|---|
[Spring] 인텔리제이 Java version 확인, 환경변수 JAVA_HOME 확인/변경 방법 (2) | 2024.02.27 |
[Spring] Spring boot 프로젝트 welcome page 어디에?? (인텔리제이) (feat. Spring boot 정보 찾기) (2) | 2024.02.26 |
[Spring] welcome 페이지 만들기 (인텔리제이) (2) | 2024.02.26 |
[Spring] 김영한 - 스프링 입문 (인텔리제이 run 설정) (0) | 2024.02.26 |