안녕하세요. 손님
thymeleaf 템플릿 엔진
thymeleaf 공식 사이트: https://www.thymeleaf.org/
스프링 공식 튜토리얼: https://spring.io/guides/gs/serving-web-content/
스프링부트 메뉴얼: https://docs.spring.io/spring-boot/docs/2.1.6.RELEASE/reference/html/ boot-features-developing-web-applications.html#boot-features-spring-mvc-template-engines
스프링 부트 thymeleaf viewName 매핑
- resources:templates/` +{ViewName}+ `.html`
@Controller // 이 클래스를 Spring MVC의 컨트롤러로 등록한다.
public class HelloController {
@GetMapping("hello") // HTTP GET 요청을 'hello' 경로로 매핑한다.
public String hello(Model model) { // 'hello' 경로의 요청을 처리하는 메서드. Model 객체를 파라미터로 받는다.
model.addAttribute("data", "hello!!"); // Model 객체에 데이터를 추가한다. 뷰에서 'data'로 데이터에 접근할 수 있다.
return "hello"; // 뷰의 이름을 반환한다. 여기서는 'hello'라는 이름의 뷰를 반환하여, 뷰 리졸버가 처리할 수 있도록 한다.
}
}
<!DOCTYPE HTML> <!-- HTML5 문서 타입 선언 -->
<html xmlns:th="http://www.thymeleaf.org"> <!-- HTML 시작 태그와 Thymeleaf 네임스페이스 선언 -->
<head> <!-- 헤드 섹션 시작 -->
<title>Hello</title> <!-- 웹 페이지의 제목 설정 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <!-- 문서의 문자 인코딩을 UTF-8로 설정 -->
</head> <!-- 헤드 섹션 종료 -->
<body> <!-- 바디 섹션 시작 -->
<p th:text="'안녕하세요. ' + ${data}" >안녕하세요. 손님</p> <!-- Thymeleaf 표현식을 사용하여, 'data' 모델 속성 값으로 문단 내용을 동적으로 설정함. 만약 'data' 값이 없다면 기본 텍스트 '안녕하세요. 손님'이 표시됨 -->
</body> <!-- 바디 섹션 종료 -->
</html> <!-- HTML 종료 태그 -->
'SPRING > Spring 활용' 카테고리의 다른 글
[스프링부트| 스프링부트와 JPA 활용 1 | 웹 애플리케이션 개발 | 회원 도메인 개발] 회원 리포지토리 개발 (0) | 2024.05.16 |
---|---|
[스프링부트| 스프링부트와 JPA 활용 1 | 웹 애플리케이션 개발 | 도메인 분석 설계] 엔티티 클래스 개발 (0) | 2024.05.16 |
[스프링부트| 스프링부트와 JPA 활용 1 | 웹 애플리케이션 개발 | 도메인 분석 설계] 도메인 모델과 테이블 설계 (0) | 2024.05.14 |
[스프링부트| 스프링부트와 JPA 활용 1 | 웹 애플리케이션 개발 | 프로젝트 환경설정] JPA와 DB설정, 동작확인 (0) | 2024.05.13 |
[스프링부트| 스프링부트와 JPA 활용 1 | 웹 애플리케이션 개발 | 프로젝트 환경설정] (0) | 2024.05.13 |