🥞 BE
home

프로젝트 환경설정

Date
2023/09/12
Category
Web
Tag
Spring
Detail

라이브러리 살펴보기

스프링 부트 라이브러리

spring-boot-starter-web
spring-boot-starter-tomcat : 톰캣 (웹서버)
spring-webmvc : 스프링 웹 MVC
spring-boot-starter-thymeleaf : 타임리프 템플릿 엔진 (View)ㄹ
spring-boot-starter(공통) : 스프링 부트 + 스프링 코어 + 로깅
spring-boot
spring-core
spring-boot-starter-logging
logback, slf4j

테스트 라이브러리

spring-boot-starter-test
junit : 테스트 프레임워크
mockito : 목 라이브러리
assertj : 테스트 코드를 좀 더 편하게 작성하게 도와주는 라이브러리
spring-test : 스프링 통합 테스트 지원

View 환경설정

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>
HTML
복사
resources/static/index.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> <a th:text="'안녕하세요. ' + ${data}">안녕하세요. 손님</a> </body> </html>
HTML
복사
templates/hello.html
package com.example.demo.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"; } }
Java
복사
com/example/demo/controller/HelloController.java

Thymeleaf 템플릿 엔진 동작 확인

컨트롤러에서 리턴 값으로 문자를 반환하면 뷰 리졸버(ViewResolver) 가 화면을 찾아서 처리한다.
스프링 부트 템플릿엔진 기본 viewName 매핑
resources:templates/ + {ViewName} + .html

빌드 및 실행

./gradlew build
Plain Text
복사

Reference