[Spring boot] Spring boot에서 Thymeleaf 사용

2020. 2. 23. 10:51·Backend/Spring

 

 

Spring boot로 회사 프로젝트를 진행하였다. 기존 코드가 있는 상황이었던 터라 설정은 건드리지 않았었다.

집에서 따로 Spring boot 템플릿 엔진을 타임리프로 무언가를 만드려던 중 설정에서 막혀버렸다 ;_;

이거 하나 해결하는데도 쪼렙 개발자는 상당 시간을 투자했다.

 

그래서 오늘은 내가 해결한 Spring boot 템플릿엔진으로 타임리프를 사용하는 방법을 포스팅한다.

 

 

 

 


 

1. dependency 추가

 

<dependency>

    <groupId>org.springframework.boot</groupId>

    <artifactId>spring-boot-starter-thymeleaf</artifactId>

</dependency>

 

 

 

2. application.properties

 

spring.thymeleaf.cache=false
spring.thymeleaf.enabled=true
spring.thymeleaf.prefix=classpath:/templates/
spring.thymeleaf.suffix=.html

 

 

1) spring.thymeleaf.cache

false로 해놓았을 때 타임리프를 수정하고 서버를 재시작할 필요 없이 새로 고침만으로 반영이 된다.

(서버 재시작을 안 해도 되어 매우 편리하다!)

개발할 때는 false로 두고 반영 시에는 true로 설정해놓는 게 좋다.

 

 

2) spring.thymeleaf.enabled

타임리프를 사용하겠다는 뜻이다.

당연히 true로 설정해둔다.

 

 

3) spring.thymeleaf.prefix

경로를 잡아준다.

나의 경우 'classpath:/templates/'로 설정해둔 게 보인다.

혹시 몰라 프로젝트 구조를 같이 첨부해두겠다.

resources 폴더 밑 templates 폴더가 보이고 그 밑으로 html 파일이 있는 것을 확인할 수 있다.

 

 

4) spring.thymeleaf.suffix

나는 html을 사용했기 때문에 '. html'로 설정해두었다.

만일 jsp를 사용한다면 '. jsp'를 입력해주면 되겠다.

 

 

 

3. ViewResolver

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
@Configuration
@EnableWebMvc
public class ViewConfig extends WebMvcConfigurerAdapter {
    @Bean
    public ViewResolver getViewResolver() {
        InternalResourceViewResolver resolver = new InternalResourceViewResolver();
        resolver.setPrefix("classpath:/templates/");
        resolver.setSuffix(".html");
        return resolver;
    }
    @Override
    public void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer) {
        configurer.enable();
    }
}
 

java 폴더 밑으로 config 폴더를 만들어 안에 ViewResolver 파일을 만들어준다.

'Backend > Spring' 카테고리의 다른 글

[Spring boot] DBCP(DataBase Connection Pool)  (0) 2020.03.08
[Spring boot] Spring boot와 MySQL 연동하기.  (0) 2020.02.24
[Spring boot] 정적 리소스 사용  (0) 2020.02.23
[Spring] @Pattern 체크 시 필수값이 아닐 때  (0) 2020.02.23
[Spring] lombok 설치  (0) 2020.02.23
'Backend/Spring' 카테고리의 다른 글
  • [Spring boot] Spring boot와 MySQL 연동하기.
  • [Spring boot] 정적 리소스 사용
  • [Spring] @Pattern 체크 시 필수값이 아닐 때
  • [Spring] lombok 설치
나는 유찌
나는 유찌
쩌리쨩
  • 나는 유찌
    유찌 개발 일기
    나는 유찌
  • 전체
    오늘
    어제
    • 분류 전체보기
      • 사이드 프로젝트
        • 게시판
        • 블로그(Spring boot + React.js ..
      • 데이터베이스
        • SQLD
      • 이슈 해결
      • Front
        • Javascript
        • Vue.js
        • HTML+CSS
      • Backend
        • Spring
        • ORM
        • JAVA
      • 공부
        • HTTP
        • OOP
        • 이것저것
        • 코딩테스트 | 알고리즘
      • Computer Science
        • Computer architecture
        • 데이터베이스
        • 운영체제
      • 일상
        • 독서
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    refresh token
    Kotlin AntPathMatcher
    pessimisticlock
    JWT이란?
    AntPathMatcher
    AccessDecisionVoter
    Spring Security AccessDecisionManager
    Access token 재발급
    access token
    한국소설
    phantom read
    권한 scope 처리
    LeetCode
    spring 격리수준
    jwt
    mssql
    redis 분산락
    Kotlin AccessDecisionManager
    spring
    DIRTY READ
    히가시노 게이고
    role scope
    jwt 로그인 구현
    웹 개발
    mysql 격리수준
    추리소설
    Spring boot에서 JWT 구현
    독서
    Access Token Refresh Token
    Spring Boot
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
나는 유찌
[Spring boot] Spring boot에서 Thymeleaf 사용
상단으로

티스토리툴바