SpringBoot
스프링 부트 템플릿 엔진과 build.gradle 정리
노아입니다
2025. 3. 19. 14:41
1. 스프링 부트 템플릿 엔진이란?
스프링 부트에서는 HTML과 데이터를 동적으로 바인딩하기 위해 템플릿 엔진(Template Engine) 을 사용합니다. 즉, HTML 파일 내에서 동적인 데이터를 표현하고 렌더링할 수 있도록 도와주는 도구입니다.
1.1 주요 템플릿 엔진 종류
스프링 부트에서 주로 사용되는 템플릿 엔진은 다음과 같습니다:
- Thymeleaf (타임리프) - 가장 많이 사용되는 템플릿 엔진으로, HTML 문법을 그대로 사용할 수 있어 직관적이며, Spring과 잘 통합됨.
- Freemarker (프리마커) - 강력한 기능을 제공하며 확장성이 좋음.
- Mustache (머스타치) - 간결하고 가벼운 템플릿 엔진으로 서버와 클라이언트 간의 일관성을 유지하는 데 유용함.
- Groovy 템플릿 - 스크립트 기반의 템플릿 엔진으로, 유연한 문법을 제공함.
1.2 템플릿 엔진 설정 (Thymeleaf 예제)
스프링 부트에서 Thymeleaf를 사용하려면 spring-boot-starter-thymeleaf 의존성을 추가해야 합니다.
// build.gradle
implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'
그리고 src/main/resources/templates 폴더에 .html 파일을 생성하여 사용하면 됩니다.
예제: src/main/resources/templates/index.html
기본 메시지
컨트롤러 코드:
@Controller
public class HomeController {
@GetMapping("/")
public String home(Model model) {
model.addAttribute("message", "안녕하세요, 스프링 부트!");
return "index"; // index.html 템플릿을 렌더링
}
}
2. build.gradle 이란?
2.1 Gradle 개요
build.gradle은 Gradle 빌드 도구를 사용하는 프로젝트의 빌드 스크립트 파일입니다. 이 파일을 통해 프로젝트의 의존성을 관리하고, 컴파일 및 패키징 작업을 수행할 수 있습니다.
2.2 기본적인 build.gradle 구조
plugins {
id 'org.springframework.boot' version '3.1.0'
id 'io.spring.dependency-management' version '1.1.3'
id 'java'
}
group = 'com.example'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '17'
repositories {
mavenCentral()
}
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-web'
implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
}
tasks.named('test') {
useJUnitPlatform()
}
2.3 주요 섹션 설명
- plugins: 프로젝트에 필요한 플러그인을 정의합니다.
- org.springframework.boot → 스프링 부트 플러그인 추가
- io.spring.dependency-management → 의존성 관리를 쉽게 해주는 플러그인
- java → 자바 프로젝트로 설정
- group & version: 프로젝트의 그룹 ID와 버전 정보를 지정합니다.
- sourceCompatibility: 사용할 Java 버전을 설정합니다.
- repositories: 프로젝트에서 사용할 라이브러리를 다운로드할 저장소를 지정합니다 (보통 mavenCentral()사용).
- dependencies: 프로젝트에서 사용할 라이브러리를 선언합니다.
- spring-boot-starter-web → 웹 애플리케이션 개발을 위한 기본 의존성
- spring-boot-starter-thymeleaf → Thymeleaf 템플릿 엔진 사용을 위한 의존성
- spring-boot-starter-test → 테스트 프레임워크 의존성
- tasks.named('test'): 테스트 실행 시 JUnit Platform을 사용하도록 설정합니다.
2.4 Gradle 명령어 예제
프로젝트를 빌드하고 실행하는 몇 가지 주요 Gradle 명령어는 다음과 같습니다:
# 의존성 다운로드
./gradlew build
# 애플리케이션 실행
./gradlew bootRun
# 테스트 실행
./gradlew test
3. 마무리
이번 포스팅에서는 스프링 부트 템플릿 엔진과 build.gradle의 개념 및 사용법을 알아보았습니다. 스프링 부트 프로젝트를 설정할 때 템플릿 엔진을 선택하는 기준과, Gradle을 활용한 빌드 방법을 이해하는 것이 중요합니다.
스프링 부트를 처음 접하는 분들도 쉽게 따라 할 수 있도록 예제를 포함했으니, 직접 실행해보면서 익숙해지길 바랍니다!