spring & springboot/스프링 입문 강의

View 환경설정

gyk7 2024. 8. 4. 17:32

- welcome page 기능

resources/static 아래에 index.html 파일을 올려두면 Welcome page 기능 제공함.

<!DOCTYPE HTML>
<html>
<head>
    <title>Hello</title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<body>
Hello
<a href="/hello">hello</a>
</body>
</html>

 

서버를 껐다가 다시켜면

localhost:8080 화면

 

이렇게 잘 뜸.

 

- thymeleaf 템플릿 엔진

동작하고 프로그래밍 되는 화면 만들기

 

첫 진입점이 controller.

hello.hellospring 밑에 controller 패키지 생성.

controller 패키지 밑에 HelloController 생성.

 

* 애노테이션 @Controller 꼭 붙이기

package hello.hellospring.controller;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;

@Controller
public class HelloController {

	@GetMapping("hello")
    public String hello(Model model) {
    	model.addAttribute("data", "hello!!");
        return "hello";
    }
 }

  model.addAttribute()

addAttribute(String name, Object value)

: value 객체를 name 이름으로 추가해줌.

: View에서 name으로 지정된 value를 사용

 

 

resources/templates/hello.html 생성

<!DOCTYPE HTML>
<html xmlns:th="http://www.thymeleaf.org">
<head>
    <title>Hello</title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<body>
Hello
<p th:text="'안녕하세요. ' + ${data}" >안녕하세요. 손님</p>
</body>
</html>

th - 타임리프

실행시키면

localhost:8080/hello

다음과 같이 화면에 나타남.

 

출처 : 김영한님 스프링 입문 강의 자료

 

컨트롤러에서 리턴 값으로 문자를 반환하면 viewResolver가 화면을 찾아서 처리함.

● 스프링 부트 템플릿엔진 기본 viewName 매핑

  'resources:templates/' +{Viewname}+ '.html'

'spring & springboot > 스프링 입문 강의' 카테고리의 다른 글

라이브러리 살펴보기  (0) 2024.08.04
프로젝트 생성(환경설정)  (0) 2024.08.04